簡體   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