c# winfrom程序中 enter键关联button按钮
Posted 晴天天晴
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# winfrom程序中 enter键关联button按钮相关的知识,希望对你有一定的参考价值。
1,关联按钮上的Key事件 在按钮上的keypress,keydown,keyup事件必须要获得焦点,键盘上的键才能有效。 private void btnEnter_KeyDown( object sender, KeyEventArgs e) { if (e.KeyCode == Keys.Enter) //如果输入的是回车键 { this .btnEnter_Click(sender, e); //触发button事件 } } 只有btnEnter获得焦点后,回车才有效。 //PS:貌似按钮获得焦点后,会自己响应回车 2,窗体上的Key事件 private void frm_test_KeyPress( object sender, KeyPressEventArgs e) { if ((Keys)e.KeyChar == Keys.Escape) { buttonESC_Click(sender,e); } } 这个时候发现,按键盘上的Esc键还是没有反应。 还需要在窗体上注册控件的键盘事件,把窗体的KeyPreview属性设置成 true ; 3,还有一种更简单的方法。网上搜的,还没有测试,不知道是否可行。 Winform中的按钮要响应回车事件,是很简单的事情!只要设置窗体中的属性设置一下就可以了! 比如有登录窗体(Form_Login),包含有两个按钮登录 (btnLogin)和退出(btnExit),想要登录 (btnLogin)响应回车键,则设置窗体(Form_Login)的属性AcceptButton为btnLogin即可!即Form_Login.AcceptButton=btnLogin; 同样道理,设置窗体(Form_Login)的属性CancelButton为btnExit,就可以响应Esc键了!即Form_Login.CancelButton=btnExit; 很简单! 如果还是不明白应该加在什么地方,我就举例说明一下: private void Form3_Load( object sender, EventArgs e) { Form_Login.AcceptButton = btnLogin; //btnLogin是登陆按钮 Form_Login.CancelButton = btnExit; //btnExit是退出按钮 } |
http://www.cnblogs.com/xiaofengfeng/archive/2011/09/16/2178655.html
以上是关于c# winfrom程序中 enter键关联button按钮的主要内容,如果未能解决你的问题,请参考以下文章