六.利用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类来定制各种信息提示框的工作。
查看本文来源