java 文本框内容改变事件  是什么...
应该怎么写啊

解决方案 »

  1.   

    可以这样写:import java.awt.BorderLayout;
    import java.awt.FlowLayout;
    import java.awt.event.KeyEvent;
    import java.awt.event.KeyListener;import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JOptionPane;
    import javax.swing.JPanel;
    import javax.swing.JTextField;/**
     * @author Chase
     * <br>
     * 该类的主要功能是当用户在文本框中
     * 输入文本时触发文本改变事件,
     * 弹出一个对话框显示用户输入的文本
     * </br>
     */
    public class TextChangedEvent extends JFrame{

    JPanel panel;
    JTextField text;
    JLabel label;
    TextChangedEvent(){
    panel = new JPanel();
    text = new JTextField(30);
    label = new JLabel("请输入文本:");
    text.setText("");
    panel.setLayout(new FlowLayout(FlowLayout.LEFT));
    panel.add(label);
    panel.add(text);
    text.addKeyListener(new GetTextFieldText());
    this.getContentPane().add(panel,BorderLayout.NORTH);
    this.setTitle("TextChangedEvent");
    this.setSize(700, 500);
    this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    this.setVisible(true);
    }
    public static void main(String[] args){
    new TextChangedEvent();
    }
    class GetTextFieldText implements KeyListener{
    @Override
    public void keyPressed(KeyEvent e) {
    // TODO Auto-generated method stub
    } @Override
    public void keyReleased(KeyEvent e) {
    System.out.println(text.getText());
    JOptionPane.showMessageDialog(null,"你输入的文本是:"+text.getText(),"",
    JOptionPane.INFORMATION_MESSAGE);
    } @Override
    public void keyTyped(KeyEvent e) {
    // TODO Auto-generated method stub

    }

    }
    }