日期:2014-05-17  浏览次数:21124 次

着急啊,各位,请问C#如何检测控件的CTRL按键抬起事件,谢谢
着急啊,各位,请问C#如何检测控件的CTRL、shift、alt按键抬起事件,谢谢

------解决方案--------------------
除非用键盘钩子,否则检测不了。只能在keypress的时候检测按下别的键的时候这些键的状态。
------解决方案--------------------
        public Form1()
        {
            InitializeComponent();
            Button btn = new Button() { Width = 100, Height = 100 };
            this.Controls.Add(btn);
            btn.KeyUp += new KeyEventHandler(btn_KeyUp);
        }

        void btn_KeyUp(object sender, KeyEventArgs e)
        {
            if (e.KeyCode == Keys.ShiftKey 
------解决方案--------------------
 e.KeyCode == Keys.ControlKey 
------解决方案--------------------
 e.KeyCode == Keys.Menu)
            {
                MessageBox.Show(e.KeyCode.ToString());
            }
        }


这样可以?