六.利用MessageBox类来制作信息对话框:
MessageBox类位于命名空间System.Windows.Forms中,它是一个静态类,所谓静态类,就是不通过创建实例就能够直接使用类中的方法。MessageBox类组成非常简单,其中最为重要的成员就是Show方法,Visual Basic .Net就是通过调用MessageBox类的Show方法来显示信息对话框的。Visual Basic .Net只使用MessageBox类是无法制作各式各样的信息对话框,还需要使用到命名空间System.Windows.Forms定义的若干枚举,这些枚举可以设定信息对话框中的各个元素。.Net 类库把信息对话框中的各个元素进行了细化,这一点不像MsgBox函数中使用的MsgBoxStryle枚举,MsgBoxStryle枚举把按钮的数目、种类、图标、按钮缺省焦点都定义到一起了。而.Net类库中定义了不同的枚举用以定义信息对话框中的各种元素。这些枚举就是:MessageBoxIcon、MessageBoxButtons和MessageBoxDefaultButton枚举。
MessageBoxIcon枚举在MessagBox类中使用主要用以设定信息对话框中的图标类型,在介绍MsgBox函数制作信息对话框时已经介绍,信息对话框中的图标主要是四种,但在MessageBoxIcon枚举中却被设定为多个值,表06是MessageBoxIcon枚举中的成员及其说明:
成员名称 |
说明 |
Asterisk |
信息符号图标。 |
Error |
关键符号图标 |
Exclamation |
感叹符号图标。 |
Hand |
关键符号图标。 |
Information |
信息符号图标 |
None |
无图标。 |
Question |
问号图标。 |
Stop |
关键符号图标。 |
Warning |
感叹符号图标。 |
表06:MessageBoxIcon枚举中的成员及其说明
MessageBoxButton枚举在MessageBox类中使用是用来设定信息对话框中的按钮数目和种类,表07是MessageBoxButton枚举的成员及其说明:
成员名称 |
说明 |
AbortRetryIgnore |
提示框中包含"中止"、"重试"和"忽略"按钮。 |
OK |
提示框中包含"确定"按钮。 |
OKCancel |
该提示框中包含"确定"和"取消"按钮。 |
RetryCancel |
提示框中包含"重试"和"取消"按钮。 |
YesNo |
提示框中包含"是"和"否"按钮。 |
YesNoCancel |
提示框中包含"是"、"否"和"取消"按钮。 |
AbortRetryIgnore |
提示框中包含"中止"、"重试"和"忽略"按钮。 |
表07:MessageBoxButton枚举的成员及其说明
MessageBoxDefaultButton枚举在MessageBox中使用是用来设定信息对话框中的缺省焦点按钮,由于信息对话框中至多只有三个按钮,所以MessageBoxDefaultButton枚举也定义了三个成员,具体如表08所示:
成员名称 |
说明 |
Button1 |
提示框中的第一个按钮是缺省焦点按钮。 |
Button2 |
提示框中的第二个按钮是缺省焦点按钮。 |
Button3 |
提示框中的第三个按钮是缺省焦点按钮。 |
表08:MessageBoxDefaultButton枚举的成员及其说明
MessageBox类中有很多重载Show方法,下面是最为常用的一种重载Show方法的语法格式:
Overloads Public Shared Function Show (ByVal text As String ,ByVal caption As String , _ ByVal buttons As MessageBoxButtons ,ByVal icon As MessageBoxIcon ,ByVal defaultButton As MessageBoxDefaultButton ) As DialogResult |
参数说明:
text 必选,提示框中显示的内容。
caption 可选,提示框标题栏中显示的文本。
buttons 可选,MessageBoxButtons值之一,设定提示框中的按钮数目和类型。
icon 可选,MessageBoxIcon值之一,设定提示框中显示的图标类型。
defaultButton 可选,MessageBoxDefaultButton值之一,设定提示框缺省焦点按钮。
返回值 DialogResult值之一。
下面代码的功能是用MessageBox类的Show方法制作如图01所示提示框:
MessageBox.Show ( "请确认操作!" , "利用MsgBox函数制作信息对话框", MessageBoxButtons.YesNoCancel , MessageBoxIcon.Question , MessageBoxDefaultButton.Button2 ) |
七.获取MessageBox类制作的信息对话框的返回值: 同样在使用MessageBox类制作的信息对话框中的某个按钮被按动后,Show方法也会返回一个数值,这个数值是DialogResult枚举中定义的一个值,通过对这个DialogResult值进行判断,从而得到信息对话框中是那个按钮被按动,表09是DialogResult枚举中的成员及其说明:
成员名称 |
说明 |
Abort |
按动提示框中的"终止"按钮。 |
Cancel |
按动提示框中的"取消"按钮。 |
Ignore |
按动提示框中的"忽略"按钮。 |
No |
按动提示框中的"否"按钮。 |
None |
无返回值。 |
OK |
按动提示框中的"确定"按钮。 |
Retry |
按动提示框中的"重试"按钮。 |
Yes |
按动提示框中的"是"按钮。 |
表09:DialogResult枚举中的成员及其说明
下列代码的功能是制作图01所示信息对话框,并通过比较DialogResult枚举中的数值来判断按动了提示框中哪个按钮:
Dim drResult = New DialogResult ( ) '定义一个DialogResult枚举数值 drResult = MessageBox.Show ( "请确认操作!", "利用MsgBox函数制作信息对话框", MessageBoxButtons.YesNoCancel , MessageBoxIcon.Question , MessageBoxDefaultButton.Button2 ) Select Case drResult Case DialogResult.Yes MessageBox.Show ( "选择""确定""按钮" ) Case DialogResult.Cancel MessageBox.Show ( "选择""取消""按钮" ) Case DialogResult.No MessageBox.Show ( "选择""否""按钮" ) End Select '判断选择提示框中了那个按钮 |
八.总结: 至此在Visual Basic .Net中制作二种类型提示对话框就介绍完了,Visual Basic .Net是通过InputBox函数来制作输入对话框,这种对话框结构比较单一,相对简单。而信息对话框在Visual Basic .Net中却可通过二种不同的方法实现,一种是继承原Visual Basic 6.0中的MsgBox函数,另外是通过.Net FrameWork SDK中的MessageBox类,虽然这二种方法所使用的东西各不相同,但具体的实现方法和步骤却非常雷同。我想通过以上介绍,各位一定可以实现用MessageBox类来替代【利用MsgBox函数制作提示框】项目中的MsgBox函数,实现用MessageBox类来定制各种信息提示框的工作。
查看本文来源