【发布时间】:2013-05-02 10:16:53
【问题描述】:
我使用以下方法挂钩键盘事件:
HookManager.KeyUp += new KeyEventHandler(HookManager_KeyUp);
然后等待键盘事件:
public void HookManager_KeyUp(object sender, KeyEventArgs e)
{
StepInfo step = new StepInfo();
step.keyALT = e.Alt;
step.keyCTRL = e.Control;
step.keySHIFT = e.Shift;
step.KeyHandle = e.Handled;
step.keySuppress = e.SuppressKeyPress;
step.keyCode = e.KeyCode;
step.keyData = e.KeyData;
step.keyValue = e.KeyValue;
step.modifiers = e.Modifiers;
}
我想查看组合键shift、ctrl、alt等控制键。 示例:shift+a、ctrl+f ..等 但我都是 e.KeyData,它只返回 A、B、C 等字母键,但 e.Alt、e.Shift 和 e.Control 始终为“假”值。
如何检查,用户是否按下 A 或 shift+A。
【问题讨论】: