上一期介绍了MessageBox类的用法,那么如何对弹出的消息对话框上的按钮进行响应呢?今天我们来介绍程序代码如何根据单击按钮来产生响应操作。
在响应操作时,每个按钮都有自己的返回值,程序当中可以使用if/else语句进行判断,下面通过一个实例来进行学习。
首先,在以前创建好的窗体界面上再添加几个必要的控件,一个label控件,两个radiobutton控件和一个button控件:

双击确定按钮,进入到程序代码编辑窗口,写入下面这段程序代码:

首先来看位于前面的这段程序代码:
string message = "输入字符少于3个,请重新输入";//消息框弹出的消息
string account = "输入用户";//定义用户字符串
string password = "输入密码";//定义密码字符串
MessageBoxButtons btn1 = MessageBoxButtons.YesNo;//定义消息框弹出的消息按钮
MessageBoxButtons btn2 = MessageBoxButtons.OKCancel;//定义消息框弹出的消息按钮
MessageBoxIcon icon1 = MessageBoxIcon.Information;//定义消息框弹出的消息图标
MessageBoxIcon icon2 = MessageBoxIcon.Warning;//定义消息框弹出的消息图标
DialogResult result, confirm;//定义用户响应后的返回值
这段代码完全是定义数据类型并赋予初值的过程,这里面用到了string、MessageBoxButtons、MessageBoxIcon和DialogResult不同对象类型,值得一提的是DialogResult定义了两个变量,它们分别是result和confirm,这两个变量是用户与消息对话框交互后的结果返回值,在下面这段代码处设置断点后,能够看出cofirm的值为DialogResult.OK:

而这个DialogResult.OK值是用户在消息对话框弹出后,用户点击确定按钮后的返回值,这里面我们还自定义了一个函数来实现不同返回值相应的操作:

这个函数有一个参数,而这个参数就是从上面confirm和result传递过来的,当用户点击确定后则退出程序,否则进入到用户名和密码的重新输入状态。
此时来运行程序,并输入正确的用户及密码后,点击确定按钮后,然后看到下面的界面:

这时点击确定后,程序直接退出。
如果我们输入了不符合条件的用户名会发生什么:

点击是按钮后,则用户名清空,光标移动到用户框内:

如果密码不符合规则,则提示密码重新输入:

此时点击取消按钮后,密码清空光标移动到密码框内:

如果用户与密码都符合要求,则又弹出第一个界面,点击确定后退出程序。
许多伟大的真理开始的时候都被认为是亵渎行为。——萧伯纳