我知道如果你输入
Do
msgbox("This is a msg box")
loop
然后弹出一个不会消失的消息框。
我想要多个能够关闭的消息框。
我该怎么做?
答案 0 :(得分:0)
您想要查找非模态对话框。你在这里弹出的msgbox是模态的,这就是为什么它们一个接一个地出现(在对话框打开时暂停执行)。
您可以在网上找到相关的参考资料。
Func _NoHaltMsgBox($code=0, $title = "",$text = "" ,$timeout = 0)
Run (@AutoItExe & ' /AutoIt3ExecuteLine "MsgBox(' & $code & ', '''& $title & ''', '''& $text &''',' & $timeout & ')"')
EndFunc
答案 1 :(得分:0)
警告:您可能会遇到严重的延迟和/或崩溃。如果您选择继续,我不对任何损失负责。
您可以制作一个批处理文件,多次打开同一个 VBS 脚本。 制作记事本:
msgbox("YourTextHere")
或者如果你想循环它:
do
msgbox("YourTextHere")
loop
用您想要的任何内容替换 YourTextHere。
然后将其另存为.vbs
然后再制作一个记事本:
start "MessageBox" "MessageBox.vbs"
将“MessageBox”更改为您创建的消息框 VBS 的名称。
多次复制和粘贴相同的脚本以多次打开它(这样做的风险由您自己承担,您可能会遇到严重的延迟)。
然后将其另存为.bat
或者多次添加批处理文件本身,以便它可以创建一个打开批处理文件的循环,从而可以从中打开更多脚本。 (这样做的风险由您自己承担,您可能会遇到严重的延迟)。
例如:
start "BatchFile" "Batchfile.bat"
将“BatchFile”更改为您制作的 Batchfile 的名称。
多次复制并粘贴以再次打开它(这样做的风险由您自己承担,您可能会遇到严重的延迟)。
到目前为止,您没问题,因为您没有打开 .bat 文件。如果您尝试对其进行测试,它将打开 .bat 文件的多个实例和消息框,然后从新实例打开更多实例,然后从更新的实例打开更多实例,并重复到足以使您的 PC 崩溃或滞后.
答案 2 :(得分:-1)
您需要一个多按钮MsgBox
,然后将其设置为值:如果按下CANCEL
,则该过程将停止。
Do
spam=MsgBox("SPAM",3)
If spam = 2 Then
WScript.Quit
End If
Loop