java 如何屏蔽键盘热键

2025-04-06 15:41:41
推荐回答(2个)
回答1:

给楼主举个例子,要屏蔽ESC键可以这样:

java.awt.KeyboardFocusManager kfm = java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager();
kfm.addKeyEventDispatcher(new java.awt.KeyEventDispatcher () {
// 如果 KeyboardFocusManager 不应对该 KeyEvent 进行进一步操作,则返回 true;否则,返回 false
@Override
public boolean dispatchKeyEvent(java.awt.event.KeyEvent e) {
if(e.getKeyCode() == java.awt.event.KeyEvent.VK_ESCAPE) {
return true; // 返回true以达到屏蔽效果
}
return false;
}
});

回答2:

SWT中的
someWidget.addKeyListener(new KeyAdapter() {
public void keyPressed(final KeyEvent e) {
e.character就是所按的键
通过条件判断把想屏掉的键屏掉

}
});