用Qt按下非拉丁键的方法是什么?
例如,对于按QKeyEvent:: key ()的'W‘键返回87,但是对于'Ц’--俄罗斯布局中相同的键--它返回1062。
因此,我不能使用常量(如Qt::Key_W )来检查按下了哪个键:如果用户切换布局,它们将无法工作。
谢谢
发布于 2015-06-26 14:39:01
键的含义取决于当前选定的布局。你观察到的是正确的。如果在任何其他应用程序中按下该键,就不会得到一个W,而是一个Ц(C)。
一个给定的键意味着Qt::Key_W,只有当它位于生成罗马W的布局中时。
如果要引用物理密钥,可以尝试使用QKeyEvent::nativeScanCode()和/或QKeyEvent::nativeVirtualKey()。当然,这些值与平台有关。
https://stackoverflow.com/questions/31074824
复制相似问题