特殊字符的虚拟键代码

问题描述 投票:-1回答:2

我试图获取常规virtual-key codes list中的其他角色的虚拟密钥代码,如'

c++ windows winapi keyboard-events
2个回答
2
投票

“ASCII”是一种字符编码.1这与密钥代码几乎没有关系。例如,“A”和“a”具有不同的ASCII值,但它们由键盘上的相同键表示(加上修饰键 - 移位)。

这就是为什么你没有找到<在列表中 - 它不是这些键代码所代表的(虚拟)键盘上的键的原因。它取决于当前活动的键盘映射如何通过键码表示该字符。


1而且,我可以补充说,在这个时代,这不是一个非常相关的问题。最好忘记ASCII,它主要被滥用。


1
投票

感谢Hans Passant

VkKeyScanEx()可能有所帮助。

例如,可以找到等同于“<”的虚拟密钥代码:

VkKeyScanEx('<', GetKeyboardLayout(0))

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.