C# Form默认的确认和取消按钮

前言

在C#的form工程中,微软提供了非常方便的确认和取消快捷默认按键设置,该设置直接可以在窗体属性中进行设置。下面以VS2019 为例简单介绍


新建窗体工程

1、新建工程,将新窗体命名和大小指定,后添加那我们的按钮
2、添加按键,将控件添加到主窗体中,如下图所示,我们将按钮命名和指定位置,我将其命名为EnterBatton和CancelButton。
在这里插入图片描述

3、将窗口的Misc杂项属性中的AcceptButton和CancelButton属性中的按键选择为EnterBatton和CancelButton。特别注意这里是选择窗体的属性,而不是按键的属性,选择之后可以发现EnterBatton被套上了一个蓝色的框框。选择作为AcceptButton按键,将会使其成为默认回车按键的触发按键;选择作为CancelButton按键,将会使其成为ESC键的触发事件按键。
在这里插入图片描述

设置按键代码

为了说明简单,我添加最简单的代码来演示。


        private void enter_button_Click(object sender, EventArgs e)
        {
            MessageBox.Show("你按下了回车!");
        }

        private void cancel_button_Click(object sender, EventArgs e)
        {
            MessageBox.Show("你取消了!");
        }

验证效果

这样一个最简单的程序就可以运行起来之后,就可以看到这个功能的效果了,可以发现:
1、enterButton被首先附上了焦点,你直接按下回车便会触发enterButton的按键事件,显示你按下了回车!"。
在这里插入图片描述

2、按下ESC按键,就会触发cancelButton的事件,显示"你取消了!"。
在这里插入图片描述

思考

  • 那我先提出一个思考:
    如果焦点在cancelButton按键上,按回车是什么效果呢?触发谁的事件呢?
    有兴趣的一定会动手验证一番,可以发现将焦点定位到CancelButton按键上之后,蓝色框框已经移动到了CancelButton按键上了,这时候无论是按回车还是ESC都是触发CancelButton的事件。

  • 另一个思考
    如果还有其他的控件比如文本框,焦点处于文本框中,可以输入字符。那这时候回车和ESC是触发谁的事件呢?
    感兴趣的朋友们可以自己试一试哦!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

火星papa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值