使用AutoHotkey彈出對話窗,依回應執行不同動作
在Windows彈出對話窗以取得回應,再依選擇執行不同的動作。有多種方法,我們主要使用AutoHotkey來實作。
1. 系統內建的 choice.exe
Windows內建選擇的命令:choice.exe,用/?即能顯示用法:
d:\>choice /?
CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text]
描述:
這個工具可以讓使用者從一些選擇中
選取一個項目,並傳回所選項目的索引。
參數清單:
/C choices 指定要建立的選擇清單。
預設清單是 "YN"。
/N 將選擇清單隱藏在提示中。
已經顯示提示之前的訊息,
選擇仍在啟用中。
...
例如:
CHOICE /T 10 /C YNC /D Y /M "按是(Y)、否(N)或取消(C)。"
if errorlevel==3 goto CANCEL
if errorlevel==2 goto NO
if errorlevel==1 goto YES
goto END
:CANCEL
echo 按了 C
goto END
:NO
echo 按了 N
goto END
:YES
echo 按了 Y
goto END
:END
- /T 等待秒數,超過設定秒數則選擇/D的預設按鍵
- /C 是能選擇的按鍵,只能選擇Y、N與C
- /D 預設值是 Y
- /M 顯示提示訊息
2. AutoHotkey的MsgBox
- MsgBox是AutoHotkey裡最常用的對話窗指令。
- 選擇後用ExitApp傳出ErrorLevel的值供批次檔判斷。
- 語法說明:MsgBox - Syntax & Usage | AutoHotkey
- 腳本原始碼:https://gist.github.com/emisjerry/3cf3604999cbba22440fbadc7080de24
yesno.bat批次檔範例:
batch=
@echo off
yesno.ahk
rem echo ErrorLevel=%ErrorLevel%
if %ErrorLevel%==1 echo 選擇了 Yes
if %ErrorLevel%==2 echo 選擇了 No
if %ErrorLevel%==3 echo 選擇了 Cancel
3. 用AutoHotkey的GUI
使用AutoHotkey的GUI設計工具來產生視窗。範例如下:
解說影片
##
您可能也會有興趣的類似文章
- AHK63|AutoHotkey V2 語言概述#1-字串、熱字串與變數 (0則留言, 2024/03/30)
- 用AutoHotkey批次快速轉檔:使用GUI圖形介面 (0則留言, 2019/10/20)
- [AHK#39] 尋找網頁上特定文字並啟動的簡單作法 (0則留言, 2020/12/12)
- [AHK#57] AutoHotkey v2正式釋出,2023年學習新目標 (6則留言, 2023/01/01)
- [AHK#36] 自製AutoSub圖形介面工具:AutoSub-AHK;Windows適用 (7則留言, 2020/05/15)
- AHK60|AutoHotkey++擴充設定詳解與Code Snippets設置;使用VS Code (0則留言, 2024/02/24)
- 輕鬆學會AutoHotkey的熱鍵:熱鍵用法實例解說(AHK #4) (2則留言, 2019/05/24)
- AutoHotkey腳本的4種除錯方法(AHK #5) (0則留言, 2019/05/25)
- 快速建立個人常用詞庫-AutoHotkey 熱字串小工具:HotString Helper(AHK #3) (0則留言, 2019/05/18)
- [AHK#58] 擷取豆瓣電影網的超簡單AutoHotkey爬蟲腳本程式 (0則留言, 2023/03/04)
- AHK59|使用VS Code開發AutoHotkey-編輯、執行與除錯 (0則留言, 2024/02/11)
- 不用寫程式的AutoHotkey腳本錄製器-Pulover’s Macro Creator(AHK #6) (0則留言, 2019/05/28)
- 11. AutoHotkey腳本產生網站介紹-用點選、拖拉和拼接迅速產生腳本! (0則留言, 2019/10/09)
- 用AutoHotkey改造特殊按鍵 (5則留言, 2008/03/19)
- [AHK#33] 重覆執行cmd.exe的「舊」命令 (0則留言, 2020/03/29)
Sorry, 很久沒用Google sc…