From 21df19c50a36c109009b18c8dab306b29011f866 Mon Sep 17 00:00:00 2001 From: Noah Date: Thu, 30 Sep 2021 13:15:51 +0200 Subject: [PATCH] Slider Locking --- src/gui/GUI.java | 26 ++++++++++++++++++++++---- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/src/gui/GUI.java b/src/gui/GUI.java index e9212e6..7a344c3 100644 --- a/src/gui/GUI.java +++ b/src/gui/GUI.java @@ -15,6 +15,8 @@ import java.awt.event.*; public class GUI { + private boolean sliderLocked = false; + private final Control control; /* Universial Atributes */ @@ -118,13 +120,17 @@ public class GUI { xAxis.addChangeListener(new ChangeListener() { @Override public void stateChanged(ChangeEvent e) { - xAxisSize = xAxis.getValue(); - updateSliderLables(0, xAxisSize); - updateStartCells(); + if(!sliderLocked) { + xAxisSize = xAxis.getValue(); + updateSliderLables(0, xAxisSize); + updateStartCells(); + } } }); xAxis.setVisible(true); + + xAxisName = new JLabel("Breite in Zellen:"); xAxisName.setBounds(50, 100, 200, 30); xAxisName.setFont(text); @@ -138,10 +144,22 @@ public class GUI { xAxisLabel.setFont(text); xAxisLabel.setForeground(Color.decode("#121212")); xAxisLabel.setVisible(true); + xAxisLabel.addKeyListener(new KeyAdapter() { + public void keyTyped(KeyEvent evt) { + if (!Character.isDigit(evt.getKeyChar())) { + evt.consume(); + } + } + }); + xAxisLabel.getDocument().addDocumentListener(new DocumentListener() { @Override public void insertUpdate(DocumentEvent e) { - System.out.println(xAxisLabel.getText()); + + sliderLocked = true; + String s = xAxisLabel.getText(); + xAxis.setValue(Integer.parseInt(s)); + sliderLocked = false; } @Override