Java相当于C#TextBox TextChanged事件
在C#中,文本框有一个事件,如下所示
private void fooText_TextChanged(object sender, EventArgs e) { //do something }
一旦文本框中的文本被更改,就会触发fooText_TextChanged中的代码。
什么是Java相当于此? 或者如何在java中实现与此相似的东西?
感谢您提供任何反馈/帮助/建议。
对于Swing,如果您希望在文本组件的文本发生更改后收到通知,则可以使用添加到JTextComponent的Document的DocumentListener。 例如,
JTextField myField = new JTextField(); myField.getDocument().addDocumentListener(new DocumentListener() { public void removeUpdate(DocumentEvent e) { // TODO add code! } public void insertUpdate(DocumentEvent e) { // TODO add code! } public void changedUpdate(DocumentEvent e) { // TODO add code! } });
另一方面,如果要在文本提交到文本组件之前检查文本,则需要将DocumentFilter添加到JTextComponent的Document。
我建议将DocumentListener
注册到组件的文档中 。 在那里,你会听DocumentEvent
。