2
在win32消息處理程序中,我希望能夠處理左右Alt鍵和控制鍵。 Left和Right與lParam的第24位區分開來,但是當我按下右Alt時,我也會收到左控制鍵的消息(因此右Alt是「alt gr」)。有沒有辦法關閉此行爲或以某種方式區分右側Alt鍵觸發的左側控制鍵的消息?右Alt鍵也觸發Windows消息左控制鍵
在win32消息處理程序中,我希望能夠處理左右Alt鍵和控制鍵。 Left和Right與lParam的第24位區分開來,但是當我按下右Alt時,我也會收到左控制鍵的消息(因此右Alt是「alt gr」)。有沒有辦法關閉此行爲或以某種方式區分右側Alt鍵觸發的左側控制鍵的消息?右Alt鍵也觸發Windows消息左控制鍵
閱讀關於使用Msdn GetKeyState
然後調用GetKeyState()
,並使用VK_LSHIFT
VK_RSHIFT
VK_LCONTROL
VK_RCONTROL
VK_LMENU
VK_RMENU
的VK
,看它是否被按下讀取鍵盤的狀態。
不幸的是,這不起作用,即如果我按右ALT鍵,然後GetKeyState()報告VK_CONTROL和VK_LCONTROL下降 – Jochen
在這種情況下,您可能必須確定鍵盤佈局,並檢測到左Alt鍵映射到控件關鍵或類似的東西。 – Martlark