如何判断文本框是否被修改,高手给指点一下,谢谢!

解决方案 »

  1.   

    可以使用CaretUpdate事件监测光标移动.只要光标在文本框上移动就会触发事件
      

  2.   

    看你用的是什么包了。如果是用AWT包中的类的话,可以使用TextListener,该接口中含有textValueChanged()方法。如果使用Swing中的JTextField类,实现监控的过程则相对复杂一些。JTextField中没有设置TextListener,而是将对文本的监视任务放入了另外一个接口Document中。因此首先要为JTextField对象申请一个Document接口对象,使用的方法是JTextField1.getDocument()(本文给出的JTextField对象名为JTextField1)。获得Document后,就可以使用addDocumentListener()来得到一个和TextListener功能类似的监听接口。DocumentListener的完整声明如下: 
      interface DocumentListener extends EventListener 
      它在包java.swing.event.DocumentListener中定义,其中包含了三个方法: 
      public void changedUpdate(DocumentEvent e):监听文本属性的变化; 
      public void insertUpdate(DocumentEvent e):监听文本内容的插入事件; 
      public void removeUpdate(DocumentEvent e):监听文本内容的删除事件。
    这样,定义一个新类,把这三个加进去就行了。
      

  3.   

    用个map,配合FocusListener,DocumentListener用起来不是很方便个人感觉。
      

  4.   

    laowantong06() 用了这么长时间还真没注意到这些
      

  5.   

    我的方法笨了一点,不过测试还算通过,你测试一下
    1.设置一个变量String temp=null;(如果是跨类的,可以设置成全局的公共静态变量)
    2.对你要判断的文本框添加keyReleased事件
    3.在事件中添加如下代码
    String tt=textField_1.getText();
    if (tt.equals(temp)==false){
    System.out.println("文本框被改变");
    }
    temp=tt;