练习小课堂
在表6-2中,你知道Type的参数值为什么是0、1、2、4、8……这样有间隔而不是连续的自然数吗?
参考答案
因为中间空开的数值(如3)可以是多种参数值之和(如1+2),为了不混淆,所以参数值是有间隔而不是连续的自然数。
6.3.3 MsgBox 函数
使用MsgBox函数,可以创建一个对话框,告诉用户某些信息,并等待用户单击其中某个按钮后继续运行。
其效果如图6-21所示。
图6-21 MsgBox函数创建的对话框
设置显示的按钮
MsgBox函数一共有6种按钮设定,如表6-3和图6-22所示。
表6-3 Msgbox的6种按钮设定
常数 | 值 | 说明 |
---|---|---|
vbOkonly | 0 | 只显示【确定】按钮 |
vbOkCancel | 1 | 显示【确定】和【取消】两个按钮 |
vbAbortRetryIgnore | 2 | 显示【终止】、【重试】和【忽略】3个按钮 |
vbYesNoCancel | 3 | 显示【是】、【否】和【取消】3个按钮 |
vbYesNo | 4 | 显示【是】和【否】两个按钮 |
vbRetryCancel | 5 | 显示【重试】和【取消】两个按钮 |
图6-22 Msgbox函数6种按钮设定
设置显示的图标样式
MsgBox函数一共有4种图标样式,如表6-4和图6-23所示。
表6-4 Msgbox的4种图标样式
常数 | 值 | 说明 |
---|---|---|
vbCritical | 16 | 显示“关键信息”图标 |
vbQuestion | 32 | 显示“警告询问”图标 |
vbExclamation | 48 | 显示“警告消息”图标 |
vbInformation | 64 | 显示“通知消息”图标 |
图6-23 不同的图标样式
可以同时设置显示的按钮和图标,在两个常数或值之间用+号连接:
其效果如图6-24所示。
图6-24 设置按钮及显示图标
设置缺省按钮
默认情况下按回车键即可执行的按钮称为缺省按钮,如图6-25所示。
图6-25 缺省按钮
如果要修改第二个按钮为缺省按钮,可以设置Buttons参数的参数值。
其效果如图6-26所示。
图6-26 设置第2个按钮为缺省按钮
如果想设置第三个、第四个按钮为缺省按钮,相应的参数如表6-5所示。
表6-5 设置缺省按钮的参数
常数 | 值 | 说明 |
---|---|---|
vbDefaultButton1 | 0 | 第一个按钮为缺省按钮 |
vbDefaultButton2 | 256 | 第二个按钮为缺省按钮 |
vbDefaultButton3 | 512 | 第三个按钮为缺省按钮 |
vbDefaultButton4 | 768 | 第四个按钮为缺省按钮 |
指定对话框类型
Buttons参数还有第四组设定值,用来决定对框的类型,如表6-6所示。
表6-6 对话框的类型
常数 | 值 | 说明 |
---|---|---|
vbApplicationModal | 0 | 应用程序强制返回;暂停执行应用程序,直到用户对消息框作出响应才继续工作 |
vbSystemModal | 4096 | 系统强制返回;暂停执行所有程序,直到用户对消息框作出响应才工作 |
MsgBox函数的返回值
设置Buttons参数可以让对话框显示不同的按钮,单击不同的按钮,将返回不同的值,如表6-7所示,程序可以根据返回值选择不同的操作,如:
表6-7 MsgBox函数的返回值
常数 | 值 | 描述 |
---|---|---|
vbOK | 1 | 单击【确定】按钮 |
vbCancel | 2 | 单击【取消】按钮 |
vbAbort | 3 | 单击【终止】按钮 |
vbRetry | 4 | 单击【重试】按钮 |
vbIgnore | 5 | 单击【忽略】按钮 |
vbYes | 6 | 单击【是】按钮 |
vbNo | 7 | 单击【否】按钮 |
6.3.4 Application 对象的 FindFile 方法
使用Application对象的FindFile方法可以显示【打开】对话框,用户可以在对话框中选择并打开文件,如图6-27所示。
图6-27 用FindFile方法打开文件
6.3.5 Application 对象的 GetOpenFilename 方法
可以调用Application对象的GetOpenFilename方法显示【打开】对话框,在对话框里选择文件,获得文件名称。
虽然同是显示【打开】对话框,但GetOpenFilename方法并不会打开选中的文件,而是返回所选文件的文件名(含路径)字符串,如图6-28所示。
图6-28 不使用参数时
可以使用FileFilter参数限制可选择的文件类型,如图6-29所示。
图6-29 使用参数限制文件类型
如果希望能在两种或多种类型的文件中选择,可以修改参数值,如图6-30所示。
图6-30 使用参数限制文件类型
也可以增加文件类型下拉列表中的项目,如图6-31所示。
图6-31 增加文件类型下拉列表中的项目
除了 filefilter, GetOpemFilename方法还有其他参数,如图6-32所示。
图6-32 当设置更多参数时
6.3.6 Application 对象的 GetSaveAsFilename 方法
可以调用Application对象的GetSaveAsFilename方法打开【另存为】对话框,在对话框里选择文件,获得文件名,如图6-33所示。
图6-33 用GetSaveAsFilename方法获取文件名
6.3.7 Application对象的FileDialog属性
使用Application对象的FileDialog属性可以获得指定目录的路径及名称,如图6-34所示。
图6-34 获取目录名称
除了msoFileDialogFolderPicker,filedialogtype参数还可以选用其他的值,如表6-8所示。
表6-8 msoFileDialogType常量列表
常量 | 说明 |
---|---|
msoFileDialogFilePicker | 允许选择一个文件 |
msoFileDialogFolderPicker | 允许选择一个文件夹 |
msoFileDialogOpen | 允许打开一个文件 |
msoFileDialogSaveAs | 允许保存一个文件 |