5

C# では、次のようなテキスト ボックスのイベントがあります。

private void fooText_TextChanged(object sender, EventArgs e)
{
    //do something 
}

テキストボックス内のテキストが変更されると、fooText_TextChanged のコードが実行されます。

これに相当するJavaは何ですか? または、Java でこれに似たものをどのように実現できますか?

フィードバック/ヘルプ/アドバイスをありがとう。

4

2 に答える 2

11

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 に追加します。

于 2012-01-04T02:11:04.410 に答える
4

コンポーネントのドキュメントに を登録するDocumentListenerことをお勧めします。そこで、s を聞きます。DocumentEvent

于 2012-01-04T02:13:17.397 に答える