繁体   English   中英

Java相当于C#TextBox TextChanged事件

[英]Java equivalent to C# TextBox TextChanged event

在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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM