为什么我在按下'AltGr`时收到两条消息?

时间:2011-08-17 14:11:06

标签: visual-c++ mfc keyboard

为什么我在按下 AltGr 时收到两条消息?

我有以下钩子:

LRESULT CALLBACK MyClass::KeyboardShotcutsHook(int code, WPARAM wParam, LPARAM lParam)

当使用波兰语时,按 AltGR + Key右Alt ),它会产生2条消息:

  1. 控制 + Key
  2. 替代 + 控制 + Key
  3. 为什么呢?以及如何避免 Ctrl + Key

1 个答案:

答案 0 :(得分:2)

因为AltGr和Alt + Ctrl是等效的(在Windows中)。两个关键的笔划序列意味着相同的事情,并且Alt + Ctrl赢了(可能是因为美国键盘布局上没有AltGr - 这是我的猜测。)

如果要检查AltGr,请检查当Alt挂钩时是否按下了Ctrl键。