我的java程序为什么键盘事件没有反应呢,求解先谢谢了。
package ptest;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MouseMoved implements MouseMotionListener,KeyListener{
private JFrame frame;
private JTextField tf;
public static void main(String[] args) {
MouseMoved m=new MouseMoved();
m.go();
}
public void go() {
frame=new JFrame("MouseMoved Frame");
Container contentPane=frame.getContentPane();
contentPane.add(new Label("Click and drag the mouse"),BorderLayout.NORTH);
tf=new JTextField(30);
contentPane.add(tf,BorderLayout.SOUTH);
frame.addMouseMotionListener(this);
frame.addKeyListener(this);
frame.setSize(300,300);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
public void mouseMoved(MouseEvent e) {
String s="Mouse Moved: X="+e.getX()+" Y="+e.getY();
tf.setText(s);
//System.out.println("mouse running ...");
}
@Override
public void mouseDragged(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
System.out.println("running...");
// String k=" Key Press: "+e.getKeyCode();
String k="";
if(e.getKeyCode()==KeyEvent.VK_CONTROL) k="C";
//tf.setText(k);
System.out.println("C");
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
System.out.println("Key Released..");
}
}