如何制作一个消息框来关闭运行进程?
How to make a message box to close the running process?
当进程是运行时,我需要一个带有“取消”和“继续”按钮的消息框:
- 取消 = 停止脚本(退出脚本)。
- 继续 = 终止进程
继续脚本。
MsgBox()
有一些 predefined button combinations (第一个参数“Flag”):
0 OK
1 OK and Cancel
2 Abort, Retry, and Ignore
3 Yes, No, and Cancel
4 Yes and No
5 Retry and Cancel
6 Cancel, Try Again, Continue
$x = MsgBox(1, "Proceed?", "Want to continue?")
ConsoleWrite($x & @CRLF)
If $x = 1 Then ConsoleWrite("continuing..." & @CRLF)
If $x = 2 Then ConsoleWrite("exiting..." & @CRLF)
如果您不想使用它们,则必须构建自己的 GUI。
正如 Stephan 所说,Autoit 没有那样的内置功能。
所以你有三个选择:
- 将您的脚本调整为预定义脚本之一,例如
MessageBox($MB_OKCANCEL, "", "Click 'Ok' to kill process")
或更相关但带有额外按钮:$MB_CANCELTRYCONTINUE
- 使用
GuiCreate()
制作您自己的消息框
- 下载并使用别人的代码来执行您想要的操作,例如:Melba23's ExtMsgBox - those are called UDFs and are generally found on AutoIt forums
当进程是运行时,我需要一个带有“取消”和“继续”按钮的消息框:
- 取消 = 停止脚本(退出脚本)。
- 继续 = 终止进程 继续脚本。
MsgBox()
有一些 predefined button combinations (第一个参数“Flag”):
0 OK
1 OK and Cancel
2 Abort, Retry, and Ignore
3 Yes, No, and Cancel
4 Yes and No
5 Retry and Cancel
6 Cancel, Try Again, Continue
$x = MsgBox(1, "Proceed?", "Want to continue?")
ConsoleWrite($x & @CRLF)
If $x = 1 Then ConsoleWrite("continuing..." & @CRLF)
If $x = 2 Then ConsoleWrite("exiting..." & @CRLF)
如果您不想使用它们,则必须构建自己的 GUI。
正如 Stephan 所说,Autoit 没有那样的内置功能。
所以你有三个选择:
- 将您的脚本调整为预定义脚本之一,例如
MessageBox($MB_OKCANCEL, "", "Click 'Ok' to kill process")
或更相关但带有额外按钮:$MB_CANCELTRYCONTINUE
- 使用
GuiCreate()
制作您自己的消息框 - 下载并使用别人的代码来执行您想要的操作,例如:Melba23's ExtMsgBox - those are called UDFs and are generally found on AutoIt forums