当前位置:首页 > 使用MsgBox 函数
64 0 256 512 768 0 描述
仅显示确定按钮,这是默认值 显示确定和取消按钮 显示终止,重试和忽略按钮 显示是,否和取消按钮 显示是和否按钮 显示重试和取消按钮 显示重要信息图标 显示问号图标 显示警告信息图标 显示信息图标 第一个按钮是缺省值 第二个按钮是缺省值 第三个按钮是缺省值 第四个按钮是缺省值
应用程序强制返回;应用程序一直被挂起,直到
vbSystemModal MsgBox显示的其它设置 vbMsgBoxHelpButton vbMsgBoxSetForeground vbMsgBoxRight vbMsgBoxRtlReading 4096 16384 65536 524288 1048576
用户对消息框作出响应才继续工作。
系统强制返回;全部应用程序都被挂起,直到用 户对消息框作出响应才继续工作。 将Help按钮添加到消息框
指定消息框窗口作为前景窗口文本为右对齐
指定文本应为在希伯来和阿拉伯语系统中的从右到左显示
你什么时候应该使用按钮参数呢?假设你要用户对一个问题回到“是”或“否”,你的信息框就需要两个按钮,当信息框有一个以上的按钮时,就需要将其中一个设置为缺省值,当用户回车的时候,这个默认的按钮就会自动地被选上。
因为,你可以显示各种各样的信息(重要,警告,信息),所以,你需要通过按钮参数设置图形代表(图标)来指明信息的重要性。除了信息类型之外,按钮参数还可以设置是否用户
必须先关闭该信息框才能切换到另外的应用程序。很多情况下,用户需要在对信息框的问题做出反应之前,切换到另外的程序或者进行另外的操作。如果这个信息框是应用程序模式(vbApplication Modal)的话,用户必须先关闭该信息框后才能继续使用你的应用程序另一方面,如果你想要在用户对信息框响应之前,将所有应用程序挂起,那么你必须在按钮参数里加上系统强制返回设置(vbSystemModal)。按钮参数的设置分为五组:按钮设置,图标设置,默认按钮设置,信息框形式和其它的MsgBox显示设置(参见图4-1)。每组设置里面只能选一个加入按钮参数里面。你可以将每种需要的设置加和起来,来设置按钮参数,例如,要显示一个带两个按钮(“是”和“否”),问号图标以及将“否”按钮设置为缺省值的信息框,你可以在表4-1里查找相应的值并且加和起来,你应该得到292(4+32+256)。你可以在立即窗口里面输入下列代码,快速查看使用该计算的按钮参数的信息框: MsgBox \
下面显示的就是信息框结果。当你直接使用加和起来的值作为参数时,你的程序可读性就不高了,因为没有参考索引表格供你检查292背后的意思。要改善你信息框函数的可读性,最好使用常量,而不要使用它们的值,例如,在立即窗口输入下列修改后的语句: MsgBox \
上面的语句得到如图4-9所示的相同结果。图4-9 你可以使用可选的按钮参数来确定信息框上的按钮个数,下面的例子示范如何在VB过程里使用按钮参数: 1. 在工程MyFunctions (Chap04.xls)里添加一新模块,并命名为Sample7 2. 激活Sample7模块,并且输入如下子程序MsgYesNo: Sub MsgYesNo() Dim question As String Dim myButtons As Integer
question = \是否要打开一个新工作簿?\
myButtons = vbYesNo + vbQuestion + vbDefaultButton2 MsgBox question, myButtons End Sub
在上面的子程序里,变量question 储存了你的信息文本, 而按钮参数的设置则储存于变量 myButtons。除了使用常量名称之外,你还可以使用它们的值,例如下面的:myButtons = 4 + 32 + 256,但是,明确了按钮常数的常量名称的话,你可以使你的程序对你自己以及将来可能要使用该程序的人来说更容易理解。变量question和myButtons用作MsgBox函数的参数。运行该程序后,你将看到如图4-9所示的结果。注意,现在按钮“否”是被选中的,它是该对话框的默认按钮,如果你按下回车,Excel将该信息框从屏幕上移除,因为MsgBox函数后面没有任何指令,所以,不会发生其它操作。将默认按钮换成vbDefaultButton1设置,可以更改默认按钮。MsgBox函数的第三个参数是标题,虽然这也是个可选参数,但是它很方便,因为当你忽略它们(默认为Microsoft Excel)时,就不能给程序提供可视提示。你可以使用这个参数,将标题栏设置为你想要的任何文字。假设你要过程MsgYesNo显示标题为“新工作簿”,下面的过程MsgYesNo2示范如何使用标题参数: Sub MsgYesNo2() Dim question As String Dim myButtons As Integer Dim myTitle As String
question = \myButtons = vbYesNo + vbQuestion + vbDefaultButton2 myTitle = \
共分享92篇相关文档