msgbox函数用法详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

使用过Windows 及其应用软件的人肯定熟悉如图1所示的消息框,这在VB 中可用MsgBox 函数来实现。

MsgBox 函数的使用格式如下:

变量=MsgBox(提示[,按钮][,标题])

其中:

(1) 变量 用于指定接收函数的返回值。MsgBox 函数的返回值是一个整数,因此变量一般为整型变量。

(2) 提示与标题 意义同InputBox 函数。

(3) 按钮 整型表达式,决定消息框中按钮的数目、类型及出现在消息框上的图标类型。其设置见表1。

在表1中,“按钮”设置值被分成了三组。具体使用时,由每一组中取一个值相加而成。当然,并非每次都要取三个值,也可以取两个、一个甚至全部省略。 表

1 消息框中“按钮”设置值及意义

分组

常数 值 描述 按钮数目及类型 vbOKOnly 0

只显示“确定”按钮 vbOKCancel 1

显示“确定”及“取消”按钮 vbAbortRetryIgnore 2

显示“中断”、“重试”及“忽略”按钮 vbYesNoCancel 3

显示 “是”、“否”及“取消”按钮 vbYesNo 4

显示“是”及“否”按钮 vbRetryCancel 5

显示“重试”及“取消”按钮 图标类型 vbCritical 16

显示红色的STOP 标志,用于严重警告信息 vbQuestion 32

显示“?”图标,用于询问信息 vbExclamation 48

显示“!”图标,用于警告信息 vbInformation 64

显示“i ”图标,用于一般信息 默认按钮

vbDefaultButton1

0 第一个按钮是缺省值 vbDefaultButton2

256 第二个按钮是缺省值 vbDefaultButton3 512 第三个按钮是缺省值

如要产生图1所示的消息框,可用如下语句:

x=MsgBox("是否保存对“第四章 基本控制结构.doc ”的修改?", 3 + vbExclamation + vbdefultbutton1, "Microsoft Word")

在实习时,可以将除提示与标题外的其它参数,按表中的内容进行更换,体会各种不同组合对消息框内容的影响。这一部分一定要自己在实习的时候多试一试。

变量x 用于记录用户按了消息框中哪一个按钮,不同的按钮返回的值不同。各个按钮的返回值见表2。

图1 Word 中的保存文件消息框

表2 MsgBox函数按钮及其返回值对照表

常数值按钮

vbOK 1 确定

vbCancel 2 取消

vbAbort 3 终止

vbRetry 4 重试

vbIgnore 5 忽略

vbYes 6 是

vbNo 7 否

后续程序可根据变量不同的返回值编写程序代码,以完成相应的任务。

例1 MsgBox函数应用举例。以前面任何一个例题为例,当单击窗体的“关闭”按钮时程序不会立即结束运行,而是给用户一个确认信息提示,如图2所示。

分析:在窗体的Form_QueryUnload事件过程中有Cancel和UnloadMode两个参数,可以通过Cancel的值来决定窗体是否退出。当Cancel值为0时正常退出,非0值时取消退出。

Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)

x = MsgBox("确认要结束程序吗?", vbQuestion + vbYesNo + 256, "确认退出") If x = vbYes Then '单击是(Y)按纽

Cancel = 0

Else

Cancel = 1 '单击否(N)按纽

End If

End Sub

将这段代码加到你任何一个程序代码中,当单击窗体关闭按

钮时,就可以选择是否退出了。

图2 MsgBox函数举例有时,程序中只需要用MsgBox函数向用户提供一个信息,

并不需要返回值,这种情况只需一个“确定”按钮。VB中对不需要返回值的MsgBox函数调用格式如下:

MsgBox 提示[,按钮][,标题]

这种方式在简单的程序设计中可以做为输出结果的有效方法,更多的是在调试程序时用以检查程序的运行情况。

第2章已经学习了VB系统常数,通过MsgBox函数的学习,应进一步加深对系统常数作用的理解。从以上两个表中可以看到,MsgBox函数按钮的取值很多,如果全部按直接常数来记忆就容易混淆,而记忆系统常数就要容易得多,例如记住系统常量“vbYesNoCancel”就要比记忆直接常数“3”容易,同样,在返回值中,记住“vbNo”比记“7”要容易得多。

相关文档
最新文档