DefaultKeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(new KeyEventDispatcher() {
@Override
public boolean dispatchKeyEvent(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_F1) {
toolbarPanel.switchLogLevelItem.setVisible(true); //设置按钮是否可见
toolbarPanel.saveItem.setVisible(true);
toolbarPanel.clearAccItem.setVisible(true);
toolbarPanel.clearBuildItem.setVisible(true);
} else if (e.getKeyCode() == KeyEvent.VK_F2){
toolbarPanel.switchLogLevelItem.setVisible(false);
toolbarPanel.saveItem.setVisible(false);
toolbarPanel.clearAccItem.setVisible(false);
toolbarPanel.clearBuildItem.setVisible(false);
return e.isConsumed();
}
@Override
public boolean dispatchKeyEvent(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_F1) {
toolbarPanel.switchLogLevelItem.setVisible(true); //设置按钮是否可见
toolbarPanel.saveItem.setVisible(true);
toolbarPanel.clearAccItem.setVisible(true);
toolbarPanel.clearBuildItem.setVisible(true);
} else if (e.getKeyCode() == KeyEvent.VK_F2){
toolbarPanel.switchLogLevelItem.setVisible(false);
toolbarPanel.saveItem.setVisible(false);
toolbarPanel.clearAccItem.setVisible(false);
toolbarPanel.clearBuildItem.setVisible(false);
}
// e.getModifiers()==3 表示ctrl+shift同事按下
// e.getModifiers()==1 表示shift按下
// e.getModifiers()==2 表示ctrl按下
System.out.println(
"e.getID() = "
+ e.getID());
System.out.println(
"e.isControlDown() = "
+ e.isControlDown());
System.out.println(
"e.isShiftDown() = "
+ e.isShiftDown());
System.out.println(
" e.getKeyCode() = "
+ e.getKeyCode());
// e.consume();// 是否已经消费了此事件
return e.isConsumed();
}
});
=======================
Toolkit 全局设置
Toolkit toolkit=Toolkit.getDefaultToolkit();
toolkit.addAWTEventListener(new AWTEventListener()
{
@Override
public void eventDispatched(AWTEvent event)
{
if (event.getClass()==KeyEvent.class)
{
KeyEvent e=(KeyEvent)event;
//...
System.out.println("e.getKeyChar()" + e.getKeyChar() + ",e.getKeyCode()"
+ e.getKeyCode() + ",e.getID()" + e.getID());
}
}
},java.awt.AWTEvent.KEY_EVENT_MASK);