From d7b8ba9f3993239926e611ce7eb6d232af35e1c1 Mon Sep 17 00:00:00 2001 From: "Hugh.C" Date: Mon, 30 Sep 2019 14:04:45 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-21689=20=E6=B0=B4=E5=8D=B0=E5=AF=86?= =?UTF-8?q?=E5=BA=A6=E6=9C=80=E5=B0=8F=E5=80=BC=E9=99=90=E5=88=B6=EF=BC=8C?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E4=BA=A4=E4=BA=92=E6=8F=90=E4=BE=9B=E7=9A=84?= =?UTF-8?q?=E5=86=85=E5=AE=B9=E8=A1=A5=E5=85=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/design/gui/ispinner/UISpinner.java | 11 +++++++++-- .../java/com/fr/design/report/WatermarkPane.java | 13 +++++-------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java b/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java index 825dddb4e..6a5f61cc9 100644 --- a/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java +++ b/designer-base/src/main/java/com/fr/design/gui/ispinner/UISpinner.java @@ -39,6 +39,7 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver private String spinnerName = StringUtils.EMPTY; private UIObserverListener uiObserverListener; private GlobalNameListener globalNameListener = null; + private boolean lessMinValue = false; public UISpinner(double minValue, double maxValue, double dierta) { @@ -97,6 +98,10 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver return nextButton; } + public boolean isLessMinValue() { + return lessMinValue; + } + public void setValue(double value) { setValue(value, true); } @@ -113,7 +118,8 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver if (globalNameListener != null && shouldResponseNameListener()) { globalNameListener.setGlobalName(spinnerName); } - value = value < minValue ? minValue : value; + lessMinValue = value < minValue; + value = lessMinValue ? minValue : value; value = value > maxValue ? maxValue : value; if (CommonUtils.equals(value, this.value)) { return; @@ -135,7 +141,8 @@ public class UISpinner extends JPanel implements UIObserver, GlobalNameObserver if (globalNameListener != null && shouldResponseNameListener()) { globalNameListener.setGlobalName(spinnerName); } - value = value < minValue ? minValue : value; + lessMinValue = value < minValue; + value = lessMinValue ? minValue : value; value = value > maxValue ? maxValue : value; if (CommonUtils.equals(value, this.value)) { diff --git a/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java b/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java index 178479de8..d5107d527 100644 --- a/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java +++ b/designer-base/src/main/java/com/fr/design/report/WatermarkPane.java @@ -36,6 +36,7 @@ import java.awt.event.ItemListener; import java.awt.event.MouseListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; +import java.awt.event.FocusAdapter; import java.awt.Dialog; import java.awt.FlowLayout; @@ -269,14 +270,10 @@ public class WatermarkPane extends BasicPane { * @return */ private FocusListener createFocusListener4GapNumberField(final UISpinner spinner, final int limitMinValue, final String messageStr) { - return new FocusListener() { - @Override - public void focusGained(FocusEvent e) { - } - + return new FocusAdapter() { @Override public void focusLost(FocusEvent e) { - if (spinner.getValue() >= limitMinValue) { + if (!spinner.isLessMinValue()) { return; } createGapDialog(new StringBuilder(messageStr).append(limitMinValue).toString()); @@ -294,8 +291,8 @@ public class WatermarkPane extends BasicPane { private MouseListener createMouseListener4GapNextButton(final UISpinner spinner, final int limitMinValue, final String messageStr) { MouseAdapter mouseAdapter = new MouseAdapter() { @Override - public void mousePressed(MouseEvent e) { - if (spinner.getValue() >= limitMinValue) { + public void mouseReleased(MouseEvent e) { + if (!spinner.isLessMinValue()) { return; } createGapDialog(new StringBuilder(messageStr).append(limitMinValue).toString());