如何在一个界面下同时只能弹出一个对话框

在一个窗口下,有多个按钮,每个按钮通过messageBox实现按下时弹出对话框进行是与否的选择,这时可以同时弹出多个对话框,请教如何做到同时只能对一个按钮操作,即只弹出一个对话框。

最佳答案

MsgBox(Msg, Style, Title, Help, Ctxt)  其中 style 定义为例如vbApplicationModal +Vbokonly
使用 vbApplicationModal 会挂起WinCC 直到你选择位置 这样你就可以屏蔽其他按钮了。
  参考:用于MsgBox函数中Button参数的常量
常量                值               说明
vbOKOnly             0   只显示“确定”按钮
VbOKCancel           1   显示“确定”和“取消”按钮
VbAbortRetryIgnore   2   显示“终止”、“重试”和“忽略” 按钮
VbYesNoCancel        3   显示“是”、“否”和“取消”按钮
VbYesNo              4   显示“是”和“否”按钮
VbRetryCancel        5   显示“重试”和“取消”按钮
VbCritical           16  显示“关键信息”图标
VbQuestion           32  显示“警告询问”图标
VbExclamation        48  显示“警告消息”图标
VbInformation        64  显示“通知消息”图标
vbDefaultButton1      0  第一个按钮是缺省值(缺省设置)
vbDefaultButton2     256第二个按钮是缺省值
vbDefaultButton3     512第三个按钮是缺省值
vbDefaultButton4     768第四个按钮是缺省值
vbApplicationModal     0应用程序强制返回;应用程序一直被挂起,直到用户对消息框
作出响应才继续工作
vbSystemModal        4096系统强制返回;全部应用程序都被挂起,直到用户对消息框作
出响应才继续工作
vbMsgBoxHelpButton    16384将Help按钮添加到消息框
VbMsgBoxSetForeground 65536指定消息框窗口作为前景窗口
vbMsgBoxRight         524288文本为右对齐
vbMsgBoxRtlReading   1048576指定文本应为在希伯来和阿拉伯语系统中的从右到左显示
说明:
(1)第一组值(0–5)描述了消息框中显示的按钮的类型与数目;第二组值(16,32,48,64)描述了图标的样式;第三组值(0,256,512,768)说明哪一个按钮是缺省值;而第四组值(0,4096)则决定消息框的强制返回性。将这些数字相加以生成Buttons参数值的时候,只能由每组值取用一个数字。
(2)这些常数都是 Visual Basic for Applications (VBA) 指定的。结果,可以在程序代码中到处使用这些常数名称,而不必使用实际数值。实际数值与常数名称是等价的。

提问者对于答案的评价:
谢谢

原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc267886.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2019年6月11日 上午5:37
下一篇 2019年6月11日 上午5:37

相关推荐