c# 注册系统热键,CTRL+ a~z 都响应,但是CTRL + 鼠标左 / 右键不响应?

c# 注册系统热键,CTRL+ a~z 都响应,但是CTRL + 鼠标左 / 右键不响应?

load事件中的注册热键代码:


MessageBox.Show(RegisterHotKey(this.Handle, 888, 2, Keys.RButton).ToString());

 

这个是响应代码:

        protected override void WndProc(ref Message m)
        {
            switch (m.Msg)
            {
                case 0x0312:    //这个是window消息定义的   注册的热键消息    
                    if (m.WParam.ToString().Equals("888"))  //如果是我们注册的那个热键 
                        this.Show();    
                        this.WindowState = FormWindowState.Normal;
                        MessageBox.Show("aaaaaaaaa");
                    break;
            }
            base.WndProc(ref m);

 

注册热键建议注册全局热键,不然很容易出现光标不在组件上面出现热键无效的情况!

本文出自《粉墨记忆》 => 《【C#】注册全局热键 监听按键 Hotkey