我希望leftCanvas捕获所有键盘事件,包括Control + Space。既然它触发了 native InputMethod
,我怎样才能实现这一点?
class leftCanvas extends Canvas implements KeyListener {
leftCanvas() {
addKeyListener(this);
enableInputMethods(false);
}
public void keyTyped(KeyEvent event) {
System.out.println(event.getKeyChar());
event.consume();
}
public void keyPressed(KeyEvent event) {
event.consume();
}
public void keyReleased(KeyEvent event) {
event.consume();
}
}
最佳答案
我必须处理系统全局热键,例如 Super + E。
看来JNI是必须的,我找到了项目jnativehook看起来真的不错!
关于java - 捕获 Control + Space 键盘事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17125254/