1

here my situation:

textField1.addChangeListener(new ChangeListener() {
        @Override
        public void stateChanged(ChangeEvent e) {
            textField1StateChanged(e);
        }
    });

the error said addChangeListener is undefined for the type JTextField. is there any thing else to import? (i'm a newbie in java) thanks

4

3 に答える 3

2

あなたはこれを試してみたいかもしれません:

// Listen for changes in the text
textField.getDocument().addDocumentListener(new DocumentListener() {
  public void changedUpdate(DocumentEvent e) {
      //your code
  }
  public void removeUpdate(DocumentEvent e) {
  }
  public void insertUpdate(DocumentEvent e) {
  }
});
于 2012-06-29T07:12:01.277 に答える
2

他に輸入するものはありますか?

これはインポートに関するものではなく、JTextField利用可能なメソッドがあります。それはそれらの1つではありません。

表の詳細については、 Swing コンポーネントがサポートするリスナー: Swing コンポーネントがサポートするその他のリスナーを参照してください。

于 2012-06-29T07:14:49.737 に答える
1

これは、JTextFieldにそのようなメソッドがないためです。代わりに、クラスにChangeListenerを実装させ、stateChanged()メソッドを実装する必要があります。ここでは、渡されたChangeEventからイベントをトリガーしたコンポーネントを取得し、それに応じて動作します。ドキュメントの例を次に示します。

class YourClass implements ChangeListener {
    public void stateChanged(ChangeEvent e) {
        if (e.getSource() instanceof JTextField) {
           JTextField source = (JTextField)e.getSource();
           if(!source.getValueIsAdjusting()) {
             // check if this is the component you want and respond to the event 
           }
        }    
    }
}
于 2012-06-29T07:13:47.033 に答える