2 ivwsdnvpynn ivwsdnvpynn 于 2013.09.14 11:57 提问

C# 注册了一个快捷键Ctrl+一个数字键事件,只有同时按下才触发相应事件问题

Blockquote

C# 注册了一个快捷键Ctrl+一个数字键事件,如Ctrl+7,只有同时按下才触发响应事件,如果第一次同时按下Ctrl+7,事件触发了,Ctrl不放,再次按7,事件不触发,部分代码如下:

   _favKey = hotkeyHelper.RegisterHotkey(Keys.D7, HotkeyHelper.KeyFlags.MOD_CONTROL);   //按键注册

hotkeyHelper.OnHotkey += OnHotkey;//全部注册事件的响应事件

//这是事件的注册方法
public int RegisterHotkey(Keys Key, KeyFlags keyflags)
{
    UInt32 hotkeyid = GlobalAddAtom(Guid.NewGuid().ToString());
    RegisterHotKey(hWnd, hotkeyid, (UInt32)keyflags, (UInt32)Key);
    keyIDs.Add(hotkeyid, hotkeyid);
    return (int)hotkeyid;
}

    //这是响应的方法
     private void OnHotkey(int hotkeyID)
            {
                if (hotkeyID == _favKey)//复制倒计时间
                {

                }
             }

希望帮忙一下指出问题所在,谢谢

Csdn user default icon
上传中...
上传图片
插入图片