import java.awt.Container;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextField;public class KeyEventDemo extends KeyAdapter implements ActionListener
{
    JFrame f = null;
    JLabel label = null;
    JTextField tField = null;
    String keyString = "";
    
    public KeyEventDemo()
    {
        f = new JFrame("KeyEvent");
        Container contentPane = f.getContentPane();
        contentPane.setLayout(new GridLayout(3,1));
        label = new JLabel();
        tField = new JTextField();
        tField.requestFocus();//获得焦点
        tField.addKeyListener(this);
        JButton b = new JButton("消除");
        b.addActionListener(this);
        contentPane.add(label);
        contentPane.add(tField);
        contentPane.add(b);
        f.pack();
        f.show();
        f.addWindowListener(new WindowAdapter(){
            public void WindowClosing(WindowEvent e)
            {
                System.exit(0);
            }
         });
    }
    public void actionPerformed(ActionEvent e)
    {
        // TODO 自动生成方法存根
        keyString ="";
        label.setText("");
        tField.setText("");
        tField.requestFocus();
    }    public void KeyTyped(KeyEvent e)
    {
        char c = e.getKeyChar();
        if(c == 'o')
        {
            JFrame newF = new JFrame("new frame");
            newF.setSize(200,200);
            newF.show();
        }
        keyString = keyString + Character.toString(c);
        label.setText(keyString);
    }
    
    public static void main(String[] args)
    {
        new KeyEventDemo();
    }
}