Quantcast
Channel: 簡睿隨筆
Viewing all articles
Browse latest Browse all 897

使用AutoHotkey彈出對話窗,依回應執行不同動作

$
0
0

在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

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設計工具來產生視窗。範例如下:

解說影片

##

您可能也會有興趣的類似文章


Viewing all articles
Browse latest Browse all 897

Trending Articles