使用快捷键时按钮控件基本上不是输入焦点,因此也无法触发键盘事件,查看了帮助文档,发现触发此事件的主体可以是本身也可以是主体的父类
新建一个类让它继承JButton并实现keyListener,然后在按钮控件的paint()方法中增加如下语句:
// 将父窗口所有组件的键盘输入事件加入侦听器
Component[] comp = getParent().getComponents();
if(comp != null){
for(int i = 0; i<comp.length;i++){
comp[i].addKeyListener(this);
}
}
// 将父窗口键盘输入事件加入到侦听器
getParent().addKeyListener(this);
public class KeyEvent
extends InputEvent
指示组件中发生击键的事件。
当按下、释放或键入某个键时,由组件对象(如