2011-03-26 57 views

回答

19

Java的挥杆适当的监听器来跟踪一个JTextField的文本内容的变化是一个的DocumentListener,你必须添加到JTextField的文件:

myTextField.getDocument().addDocumentListener(new DocumentListener() { 
    // implement the methods 
}); 
+1

当所有人都想检测到变化时,这有点OTT,但我承认这是唯一可行的解​​决方案。 – 2014-04-02 09:31:29

-1

您可以将KeyListener或ActionListener添加到该字段并捕获事件。

0

您可以使用 Caret Listener

 JTextField textField = new JTextField(); 
    textField.addCaretListener(new CaretListener() { 

     @Override 
     public void caretUpdate(CaretEvent e) { 
      System.out.println("text field have changed"); 

     } 
    }); 
+0

不,一个caretListener与_data_的变化无关... – kleopatra 2013-07-06 09:58:54

3

使用按键侦听器,这样

JTextField tf=new JTextField(); 
tf.addKeyListener(new KeyAdapter() 
    { 
     public void keyPressed(KeyEvent ke) 
     { 
      if(!(ke.getKeyChar()==27||ke.getKeyChar()==65535))//this section will execute only when user is editing the JTextField 
      { 
       System.out.println("User is editing something in TextField"); 
      } 
     } 
    }); 
相关问题