2013-09-30 77 views
0

HKM_GETHOTEKY返回虛擬鍵碼和修飾符,但它們與普通的虛擬鍵碼不一樣嗎? HOTKEYF_EXT的用途是什麼?我如何使用它?熱鍵控制鍵碼混淆

如果我按F5熱鍵控制返回0x74這是VK_F5,但是當我按下右箭頭鍵,返回0x27這是VK_RIGHT和HOTKEYF_EXT位設置上的修飾。如果我使用HKM_SETHOTKEYVK_RIGHT爲虛擬鍵和無改性劑,它顯示"Num 6"

我覺得這是很奇怪的,我需要能夠給任何虛擬按鍵傳遞給熱鍵控制窗口,因此我需要了解這個HOTKEYF_EXT修改。

回答

1

「擴展密鑰」是添加到原始IBM PC鍵盤佈局的密鑰。這是這樣的:

enter image description here

注意如何它還沒有有專用的光標鍵,它們被用在正確的鍵盤集成。並注意右箭頭如何與Numpad-6相匹配。專用的右箭頭鍵添加到後面的鍵盤佈局(帶有101個鍵的增強佈局)由HOTKEYF_EXT位區分。

+0

我可以以某種方式將HKM_GETHOTKEY返回值轉換爲普通虛擬鍵碼嗎? –

+0

你已經知道了,它是返回值的低字節。只需使用retval&0xff即可。 –

+0

謝謝,但對不起,我的意思是;我怎樣才能正確地給熱鍵控制'VK_RIGHT'?如果我只給'VK_RIGHT'沒有'HOTKEYF_EXT',它顯示爲「Num 6」。我什麼時候應該使用'HOTKEYF_EXT'? –