由于工程项目需要,要在全屏Form中加上键盘ESC的响应,实现的效果就是:全屏中press键盘上的Escape键,程序结束。

原本觉得挺简单的功能,却捣鼓了一会儿才解决。大致总结一下步骤:

首先在form的designer下加上 this.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.Form_KeyPress);

然后写响应函数

 

        private void Form_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == (char)Keys.Escape) {
                Application.Exit();
            }
                
        }


这样完成了之后,运行程序,发现form并没有响应ESC。

 

还需要在form中将KeyPreview的属性设置为True,如图所示:

c# Form中的键盘响应_全屏

全部完成后,form正常响应ESC。