我用MSVC++制作了一款FPS游戏,在Windows上运行得非常好。但现在我试图使它可移植(至少我想创建一个Linux和Windows版本),所以我决定将IDE更改为Code :: Blocks和框架wxWidgets。但似乎虚拟键码和扫描码在不同的系统上是不同的。 (我得到了关于它们无法控制字符(取决于numlock状态,lol,而不是笑话)的错误报告,这是因为它们是不同的固定时更改代码以使用扫描码,而不是VIRTKEY代码) (编辑:!与wxWidgets的两个VIRTKEY和扫描码的数字键盘具有根据numlock的状态不同的值,砰) 操作系统和实现独立访问键盘?
与wxWidgets的现在看来wxKeyEvent: :GetRawKeyCode和前面从WM_KEYDOWN的lParam获得的代码是不同的。我还从GetRawKeyCode获得了一个完全不同的扫描代码在linux(ubuntu)上。
嗯,我可以通过按所有键,看看它给出了什么代码,但唯一的问题是Ubuntu的笔记本电脑上运行,而笔记本电脑没有一个完整的键盘... 但我需要他们所有人来使控制设置工作。
所以问题:是否有一个标准的和跨平台的方式来获取相同的密钥相同的代码(密钥在相同的位置更精确)? (至少在windows和linux上)
Ubuntu不是Unix。它是linux。它们是有区别的。 – epochwolf 2009-03-07 13:07:42
但它是基于unix的...(后期编辑肯定) – Calmarius 2009-03-07 13:30:00
避免参数并将其称为GNU。参见 http://www.dwheeler.com/sloc/ – ashawley 2009-03-12 21:56:02