C# windows Form 之 MessageBox
在windows From 程序中消息框(MessageBox)是很常见的,它能非常方便的向用户提供各种显示信息。下面示例用MessageBox来显示每一位程序员都非常熟悉的两个单词。
class MessageBoxHelloworld { public static void Main() { System.Windows.Forms.MessageBox.Show("Hello World!"); } }
当然,用运行上面程序需要在项目中添加引用System,System.Drawing以及System.Windows.Froms.
下面看下MSDN对MessageBox说明:
你不能实例化MessageBox类,为了显示一个消息框你只需要调用MessageBox.Show()即可。至于消息框的标题,内容,按钮以及显示的图标可以通过向Show()方法传入不同的参数来指定。
MessageBox从Object派生而来,除了实现了Object的方法外,MessageBox只实现了一个静态的Show()方法。但是该方法有多种的重载形式,来满足用户的需要。下面一一道来………
1.指定消息的标题
Show()方法的第一个参数是显示的信息内容,第二个参数则是消息的标题内容
MessageBox.Show("Hello world", "系统信息");//'系统信息'显示在消息框的标题位置
2.显示的按钮
使用枚举MessageBoxButton来指明显示在消息框上的按钮,MessageBoxButton有以下6个成员:
OK , OKCancel , AbortRetryIgnore , YesNoCancel , YesNo , RetryCancel
从字面上就能很容易的指导每个枚举值所代表的按钮。需要说明的是,含有Retry的枚举值现在很少使用,这是MS-DOS在过去当用户试图访问一个由于某种原因
而无法响应的设备(通常是软盘)而显示的消息。
当你需要Ok和Cancel按钮时可以这样调用Show()
MessageBox.Show("Hello World", "System",MessageBoxButtons.OKCancel);
3.指定窗口的图标
消息框一般是用来给用户以提醒的,为了达到更好的提醒效果,需要为消息框指定一个图标(Icon)。.NET中也使用一个枚举来表示多种图标
成员 | 描述 |
None | 无 |
Hand | 红色的背景,一个圆圈中一个白色的X |
Stop | 红色的背景,一个圆圈中一个白色的X |
Error | 红色的背景,一个圆圈中一个白色的X |
Question | 蓝色的背景,一个圆圈中一个白色的? |
Exclamation | 黄色的背景,一个三角中一个黑色的! |
Asterisk | 蓝色的背景,一个圆圈中一个白色的i |
Warning | 黄色的背景,一个三角中一个黑色的! |
Information | 蓝色的背景,一个圆圈中一个白色的i |
通过上表可以看出实际上只有4中不同的图标可供选择。
想要现实一个警告可以这样调用Show()
MessageBox.Show("Hello World", "System",MessageBoxButtons.OK,MessageBoxIcon.Warning);
4.指定默认按钮
如果在消息框中指定了二个或三个按钮,可以使用枚举MessageBoxDefaultButton来指明那个按钮时默认的。例如:
MessageBox.Show("Hello World", "System",MessageBoxButtons.OKCancel, MessageBoxIcon.Warning,MessageBoxDefaultButton.Button2);
上面代码指定了第二个按钮为默认按钮,该按钮将会在消息框上突出显示,并且它还响应键盘输入,例如按下空格键。
5.MessageBox的返回值
MessageBox 的返回值是DialogResult类型的枚举。该枚举有以下成员,用来指示用户按下的是那个按钮。
None , OK , Cancel , Abort , Retry , Ignore , Yes , No
下面代码是通常使用DialogResult的方式,
DialogResult dr = MessageBox.Show("是否创建一个新的文件", "系统信息", MessageBoxButtons.OKCancel, MessageBoxIcon.Information); if (dr == DialogResult.OK) { //create a new file } else { //do nothing }