WinForm下的键盘事件(KeyPress、KeyDown)及如何处理不响应键盘事件

时间:2023-12-20 11:55:44

KeyDown事件用来处理功能键:F1 F2 F3... 
keyPress事件用来处理字符比如说:A B C... 1 2 3... 
注:处理该事件时,需要先将窗体的 KeyPreview=true; (请注意,不设置该项是引起键盘事件不响应的多数原因

KeyPress事件的示例:
        private void FormMain_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar.ToString() == Keys.A.ToString())
            {
                this.TSMIGoto_Click(sender, e); //满足条件后执行事件
            }
        }

KeyDown事件的示例:
        private void FormMain_KeyDown(object sender, KeyEventArgs e)
        {
            if (e.KeyData == Keys.F8)
            {
                this.TSMIGoto_Click(sender, e); //满足条件后执行事件
            }
        }