【发布时间】:2014-12-03 14:01:36
【问题描述】:
目前我在每个文本字段上使用 DocumentListener 来实时验证用户输入,但我认为必须有更聪明的方法,因为我重复了很多次。
有没有更聪明的方法?
nameJTextField.getDocument().addDocumentListener(new DocumentListener() {
@Override
public void insertUpdate(DocumentEvent e) {
validateName(nameJTextField.getText());
}
@Override
public void removeUpdate(DocumentEvent e) {
validateName(nameJTextField.getText());
}
@Override
public void changedUpdate(DocumentEvent e) {
}
private void validateName(String name) {
if (name.matches("^[A-ZÆØÅa-zæøå0-9]{2,40}$")) {
errorNameJLabel.setText("");
} else {
errorNameJLabel.setText("Min 2 and max 40 letters and numbers");
}
}
});
【问题讨论】:
-
据我所知,这是有史以来最聪明的方法
标签: java swing validation jtextfield documentlistener