首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >JAVA键盘键码与C++ KeyEvent键码的区别

JAVA键盘键码与C++ KeyEvent键码的区别
EN

Stack Overflow用户
提问于 2010-05-10 02:40:15
回答 1查看 1.2K关注 0票数 3

我注意到C++中的vkCode给出的键码与C++的KeyEvent给出的键码不同。(当然,普通字符具有相同的代码(0、=>、48,就像ASCII码一样),但它们在其他键上不同)。有没有办法将它们从一种“翻译”到另一种(每种方法背后的逻辑是什么?)或者我应该使用大量的开关和IFs来实现这个目的。如果有帮助的话,我的应用程序一半在C++中,一半在JAVA中,因为c++给了我们原生钩子,它会获得用户按下的键的键码,然后java就会使用它们。

提前谢谢。

EN

Stack Overflow用户

回答已采纳

发布于 2010-05-10 02:56:03

,还是应该使用大量的交换机和IFs

您可能只需要将它们放在一个lookup table中,也就是说,将Java KeyCodes放在一个大型数组中,所以您只需要执行javaKeyCode = keyLut[cppScanCode]

一个扫描码列表可以在here中找到,VK_KEYCODES当然可以在the API docs for KeyEvent中找到。

Java被设计成与平台无关,所以无论扫描码如何,按下左键总是会产生一个VK_LEFT。我不能完全确定,但我认为C++-scancode依赖于硬件。

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2798708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档