Ctrl + B键盘绑定如何工作?

时间:2011-07-10 07:28:17

标签: java keyboard-shortcuts keyboard-hook

Word中的 Ctrl + B ,无论我使用什么语言,其他快捷方式的工作方式都相同 - 这个绑定是如何完成的?它可以用Java完成吗?

2 个答案:

答案 0 :(得分:3)

如果我理解正确,我想知道输入 Ctrl + B 会在使用不同语言时创建不同的密钥代码吗?在这种情况下,请查看KeyEvent API。它有2个相关的方法:getKeyCode()和getKeyChar()。

键关闭时调用的

getKeyChar()取决于当前语言。 getKeyCode()不依赖。它总是返回密钥的代码,而不是与之关联的字母。此外,我发现(至少在我的系统上 - Linux Fedora)getkeyChar()在密钥释放时调用返回英文字符,即使当前语言不同。

以下是在我的系统上安装3种不同输入语言的同一按键的按下和释放结果:英语,俄语和希伯来语。

按下:ф65 发布:65 压力:65 发布:65 压力:65 发布:65

正如您所看到的,尽管char不同,但密钥代码始终相同。

答案 1 :(得分:1)

请参阅How to Use Key Bindings,了解其在Swing中的工作原理。