JPanel 可以addKeyListener吗
我写了一个程序发现用 JPanel接受 键盘事件 没有反应
用JFrame怎正常
这是怎么回事
当然了.
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;/**
*在JPanel中监听键盘事件
*By [url=http://eastsun.javaeye.com]Eastsun[/url]
*/
public class KeyLis{
public static void main(String[] args){
JFrame frame =new JFrame(\"KeyLis\");
final JLabel label =new JLabel(\"key press: \");
JPanel panel =new JPanel();
panel.setPreferredSize(new Dimension(320,240));
panel.add(label);
panel.addKeyListener(new KeyAdapter(){
public void keyTyped(KeyEvent e){
label.setText(\"key press:\"+e.getKeyChar());
}
});
panel.setFocusable(true);
frame.add(panel);
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}