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

时间: 2024-08-25 05:13:30

c# winfrom程序中 enter键关联button按钮的相关文章

enter 键 触发搜索按钮

2.0中: </form> 支持ie,firefox<script>function isEnter(ev){var ev = ev || window.event;var keycode;if(window.event) keycode = ev.keyCode;else keycode = ev.which;if(keycode == 10 || keycode == 13) return true;else return false;}</script><i

在ie9下在textbox框里面输入内容按enter键会触发按钮的事件

问题 在ie下,如果存在有button标签,如果在textbox里面输入内容,按下enter键,则会触发第一个按钮的click事件,经过测试,在IE10以及以下的都存在这个问题 原因 浏览器默认行为不一致导致 IE浏览器IE8及以后的版本,会根据页面使用的文档模式(Defining document compatibility)来定义按钮的兼容性问题.IE8标准模式的默认行为是submit,其他模式的默认行为是button. submit 该按钮是提交按钮(除了 Internet Explore

vue中,点击button按钮后,页面上的input框自动聚焦

需求:点击button按钮,录入成功后,页面上的input框自动聚焦,快速进行下一次录入,提高效率 开始尝试了几种方法都没有成功 一.首先想到的用vue指令 v-focus,然而没有成功 <Input v-model="book.isbnOrIssn" @change.native="_getIsbn" @blur="_getIsbn" :disabled="snDisabled" v-focus placeholder

.NET开发中主键关联外键的值

本人总结的3种: 1.根据前台获取的WID编号到后台去活动外键表数据返回,获取WName: 2.在实体类主键表Model中添加属性public string WName{get;set;},在前端获取Bll业务逻辑时加入Model.WName返回显示: 3.在sql语句中内联查询:sql="select a.*,b.WName from Goods a left join Category b on a.WID=b.WID"

listview的gridview视图中,获取列中模板内的button按钮(找控件内的控件)

点击“间隙”,获取“间隙”旁边隐藏的减号按钮(本图片未显示出来) private void TextBlock_MouseDown_2(object sender, MouseButtonEventArgs e) { ContentPresenter contentPres = (sender as FrameworkElement).TemplatedParent as ContentPresenter; DataTemplate dTemplate = contentPres.Content

CocoaPods:管理Objective-c 程序中各种第三方开源库关联

在我们的iOS程序中,经常会用到多个第三方的开源库,通常做法是去下载最新版本的开源库,然后拖拽到工程中. 但是,第三方开源库的数量一旦比较多,版本的管理就非常的麻烦.有没有什么办法可以简化对第三方库的管理呢?有!在使用SDWebImage这个第三方库的时候,我在学习如何将进度展现时,看到有人提到用CocoaPods(http://cocoapods.org/,需FQ) 来管理第三方开源库. CocoaPods是管理Objective-c 程序中各种第三方开源库关联非常棒的方式,只要安裝好 Coc

WinForm中变Enter键为Tab键实现焦点转移的方法

if (e.KeyCode == Keys.Enter) { //this.SelectNextControl(this.ActiveControl,true, true, true, true); SendKeys.Send("{Tab}"); //向活动应用程序发送击键 注意格式:Send("{Tab}");中的{} } /// <summary> /// 窗体控件控制相关的方法 /// </summary> public class C

js防止回车(enter)键提交表单及javascript中event.keycode

如何防止回车(enter)键提交表单,其实很简单,就一句话.onkeydown="if(event.keyCode==13)return false;"把这句写在from标签里面就好了. 如果在页面中按Enter键会自动提交的话,可以设置返回值防止自动提交如<input id="q" name="q" type="text" onkeypress="javascript:return gosearch();&q

清除oracl中有主外键关联的表中的部分数据。

1.禁用主外键BEGINfor c in (select 'ALTER TABLE '||TABLE_NAME||' DISABLE CONSTRAINT '||constraint_name||' ' as v_sql from user_constraints where CONSTRAINT_TYPE='R') loop EXECUTE IMMEDIATE c.v_sql;end loop;end;2.清空数据源.清空所有数据.一般情况是对表进行条件删除.begin for ec in (