From a65cfd52cf932e75d36765773da4670811173d75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Levy=2EXie-=E8=A7=A3=E5=AE=89=E6=A3=AE?= Date: Wed, 25 Dec 2024 14:50:04 +0800 Subject: [PATCH] =?UTF-8?q?REPORT-145133=20fix:=E9=87=8D=E5=90=8D=E6=A0=A1?= =?UTF-8?q?=E9=AA=8C=E4=BA=A4=E4=BA=92=E5=8F=98=E6=9B=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/fr/file/FILEChooserPane.java | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/designer-base/src/main/java/com/fr/file/FILEChooserPane.java b/designer-base/src/main/java/com/fr/file/FILEChooserPane.java index 06620ba719..ade89dbf93 100644 --- a/designer-base/src/main/java/com/fr/file/FILEChooserPane.java +++ b/designer-base/src/main/java/com/fr/file/FILEChooserPane.java @@ -1926,15 +1926,15 @@ public class FILEChooserPane extends BasicPane { nameField.getDocument().addDocumentListener(new DocumentListener() { public void changedUpdate(DocumentEvent e) { - validInput(); + resetInputChecker(); } public void insertUpdate(DocumentEvent e) { - validInput(); + resetInputChecker(); } public void removeUpdate(DocumentEvent e) { - validInput(); + resetInputChecker(); } }); nameField.selectAll(); @@ -1993,7 +1993,9 @@ public class FILEChooserPane extends BasicPane { } private void confirmClose() { - + if (!validInput()) { + return; + }; String userInput = nameField.getText().trim(); // 处理不合法的文件夹名称 @@ -2028,12 +2030,13 @@ public class FILEChooserPane extends BasicPane { } - private void validInput() { - + private boolean validInput() { + boolean valid = true; String userInput = nameField.getText().trim(); if (StringUtils.isEmpty(userInput)) { confirmButton.setEnabled(false); + valid = false; } boolean duplicate = false; @@ -2045,7 +2048,7 @@ public class FILEChooserPane extends BasicPane { break; } } - + valid = valid && !duplicate; if (duplicate) { nameField.selectAll(); // 如果文件名已存在,则灰掉确认按钮 @@ -2059,6 +2062,12 @@ public class FILEChooserPane extends BasicPane { warnLabel.setVisible(false); confirmButton.setEnabled(true); } + return valid; + } + + private void resetInputChecker() { + warnLabel.setVisible(false); + confirmButton.setEnabled(true); } } }