2017-12-18 155 views
-1

我想獲得虛擬鍵碼爲其他字符從常規virtual-key codes list,如'<',但我無法找到它,它是一個ASCII字符,我無法找到它。虛擬鍵碼爲特殊字符

+0

要想得到一個較爲有意思的回答:爲什麼你要查找的代碼?你需要什麼,你打算如何使用它? –

+0

它是一個字符,而不是虛擬鍵碼。究竟需要按什麼鍵取決於線程的活動鍵盤佈局。趨向於與默認的鍵盤佈局相同,但用戶切換語言欄。 VkKeyScanEx()可能會有所幫助。 –

+0

謝謝Hans Passant,VkKeyScanEx('<',GetKeyboardLayout(0))做了這個訣竅。 – Dan

回答

1

感謝漢斯帕桑特

VkKeyScanEx()可能的幫助。

例如,虛擬鍵碼相當於「<」可以與發現:

VkKeyScanEx('<', GetKeyboardLayout(0))

2

「ASCII」是字符編碼。 這與關鍵代碼很少有關。例如,「A」和「a」具有不同的ASCII值,但它們由鍵盤上的相同鍵(加上修飾鍵 - 移位)表示。

這就是爲什麼您在列表中找不到< - 它不是這些鍵代碼所代表的(虛擬)鍵盤上的鍵。它取決於當前活動的鍵盤映射如何通過鍵碼錶示該字符。


而且,我想補充,不是非常相關的一個在這個時代。最好忘記ASCII,它主要是濫用。

+0

感謝您的幫助,我知道ASCII和密鑰代碼是不同的東西,但它只是一個示例,用於在美國標準鍵盤的虛擬密鑰代碼列表中丟失重要的字符。我知道這取決於鍵盤映射,但在那種情況下,我怎麼能找到它? – Dan