我有一个 JTextField,带有更改文本事件的监听器。
我可以使用此监听器来影响它正在监听的同一对象吗?例如,如果它检测到“有问题”的更改,它应该删除同一 JTextField 对象中的所有文本。
这可能吗?好像不行...
示例如下: .
this.txtSearch.getDocument().addDocumentListener(new DocumentListener() {
public void changedUpdate(DocumentEvent e) {
validate();
}
public void removeUpdate(DocumentEvent e) {
validate();
}
public void insertUpdate(DocumentEvent e) {
validate();
}
private void validate(){
if not_good(txtSearch.getText()) {
txtSearch.setText("");
}
}
最佳答案
通过 textChanged
事件更改 JTextField
中的文本可能会导致 textChanged
事件循环(可能是无限循环)。不要这样做。
如果您想验证 JTextField
的输入,请使用 InputVerifier
.
javadoc 包含 some examples of how to use it ,看看吧。
关于java - 听众及其对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10902611/