0

无论我使用什么语言,+ in 和其他快捷键的工作方式都是一样的——这个绑定是如何完成CtrlBWord可以用Java完成吗?

4

2 回答 2

3

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

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

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

按下:ф65 释放:a 65 按下:a 65 释放:a 65 按下:ש 65 释放:a 65

如您所见,尽管字符不同,但关键代码始终相同。

于 2011-07-10T07:50:40.733 回答
1

请参阅如何使用键绑定以了解其在 Swing 中的工作原理。

于 2011-07-10T15:05:29.803 回答