【发布时间】:2016-01-28 08:25:19
【问题描述】:
我需要使用密码和密码确认来验证简单的 JavaFX 表单。
validationSupport.registerValidator(passwordInput,
Validator.createEmptyValidator("Password required!"));
validationSupport.registerValidator(confirmPasswordInput,
new EqualsToValidator(passwordInput.textProperty(),
"Password differs from confirmation"));
在 EqualsToValidator 中,我只是比较 property.getValue() 和 value 传递给验证器。
如果我更改 only 密码 EqualsToValidator 是 not 因为它正在监听 confirmPasswordInput 而不是 passwordInput。
我只找到了丑陋的解决方案:
passwordInput.textProperty().addListener((observable, oldValue, newValue) -> {
String oldText = confirmPasswordInput.getText();
confirmPasswordInput.setText(null);
confirmPasswordInput.setText(oldText);
});
当另一个字段发生变化时如何使一个字段失效?
【问题讨论】:
-
嗯,看来验证没那么复杂。我编写了自己的简单验证器。
-
请将您的解决方案写在评论或回答部分,以便有相同问题的人有解决方案。
-
您找到将它与 ValidationSupport 一起使用的方法了吗?
标签: validation javafx controlsfx