# MessageBoxEx 消息对话框
CreateObject("WWSCommon.MessageBoxEx")
该组件实现了Windows中的消息框功能,并且功能更加强大。
属性
属性 | 说明 |
---|---|
Button | 对话框上显示的按钮,默认值为0,可以为下列值之一: 0 只显示确定按钮 1 显示确定和取消按钮 2 显示是和否按钮 3 显示是、否和取消按钮 4 显示放弃、重试和忽略按钮 5 显示重试和取消按钮 6 显示取消、再试和继续按钮 7 显示继续和放弃按钮 8 显示跳过、全部跳过和取消按钮 9 显示忽略、全部忽略和取消按钮 注意:该属性不能与CustomButtons同时使用 |
IconType | 对话框上的图标样式,默认值为0,即不显示图标。可以为下列值之一: 0 不显示图标 1 显示惊叹号图标 2 一个圆圈中小写字母i组成的图标出现在消息框 3 一个问题标记图标出现在消息框。 4 一个停止消息图标出现在消息框。 |
DefButton | 初始的默认按钮。默认值为零。可以为下列值之一: 1 第一个按钮为默认按钮 2 第二个按钮为默认按钮 3 第三个按钮为默认按钮 4 第四个按钮为默认按钮 5 第五个按钮为默认按钮 6 第六个按钮为默认按钮。 |
CustomButtons | 用户可以自定义任意4个按钮,它的格式必须为例如:“Custom1”这种。其中Custom为按钮 的标签文本,每个按钮之间用分号分割 注意:该属性不能与Button同时使用,在使用本属性时,Button会被强行置零 |
YesToAllButton | 指示消息框上是否显示“全是”按钮。为1表示显示,为0表示不显示。 注意:“全是”和“全否”按钮只能用在“是、否”或者“是、否、取消”按钮组合中,否则该 消息框会为此弹出警告消息 |
NoToAllButton | 指示消息框上是否显示“全否”按钮。为1表示显示,为0表示不显示。 注意:“全是”和“全否”按钮只能用在“是、否”或者“是、否、取消”按钮组合中,否则该 消息框会为此弹出警告消息 |
DontAsk | 在对话框下方显示一条带有提示信息的复选框,用户选择此复选框后,对话框将会在下次不显示,而是直接返回用户上一次操作时所选择的按钮。该属性通常的默认值为0,即表示没有此复选框,但它可以为下列值之一: 1 显示“下次不要再询问我了”复选框 2 显示“下次不要再告诉我了”复选框 3 显示“下次不要再显示了”复选框 |
TimeOut | 消息框的超时自动退出时间,单位为秒。默认值为0,即表示该功能不起作用,一旦为此属性设置时间,在时间到达之后,默认的按钮会被自动选中,消息框自动退出 |
Disabled | 消息框按钮的禁用时间,单位为秒。默认值为0,即表示改功能不起作用,一旦为此属性设置时间,在时间未到达之前,按钮是被禁用的 |
CompanyName | 你可以为此消息框提供一个可以识别的名字,该信息用来在保存一些必要数据时,存放到该指定位置。需存放的信息例如是DontAsk属性里的,该属性的字符串会被系统写在注册表里的,用于与其他公司的标示区别 |
方法
方法 | 说明 |
---|---|
DisabledSound | 该方法没有返回值,参数为1表示消息框在弹出时有声音提示 |
SetHelpButton | 为消息框设置帮助按钮。第一个参数为数值表达式,用于标识由帮助文件的作者指定给某个帮助主题的上下文编号。第二个参数用于表示该帮助按钮是否可用,为1表示可用,为0表示不可用。 |
SetDisplayNotify | 为消息框设置一个报告通知按钮。第一个参数为有关此报告的描述信息,第二个参数为报告按钮是否可用,1表示可用,0表示不可用,第三个参数表示此报告按钮的文本,如果此参数为空字符串,系统会显示默认的“报告”按钮。 |
DoModal | 调用此函数来显示消息框,并返回一个值指示用户单击的按钮。第一个参数表示此消息框上显示的字符串,第二个参数表示此消息框的标题。此方法的返回值如下: -1 表示在调用此方法时出错 1 确定 2 取消 3 放弃 4 重试 5 忽略 6 是 7 否 8 关闭NT4.0+ 9 帮助 10 再试 11 继续 14 跳过 15 跳过全部 16 全部忽略 19 全是 20 全否 23 自定义按钮一 24 自定义按钮二 25 自定义按钮三 26 自定义按钮四 |
示例
Sub MessageBoxEx()
Dim d '创建一个变量
Set d = CreateObject("WWSCommon.MessageBoxEx")
d.Button = 3'显示是、否和取消按钮
result = d.DoModal("欢迎使用金字塔","VBA入门")
if result = 6 then
Msgbox "恭喜您,距离成功更近一步"
end if
End Sub
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9