BatchSelectorUIとは?
選択肢形式のUIを簡単に作成することができるバッチファイルです。
単体で使用するものではなく、ソフトウェアに組み込んだりして利用するものです。
使い方
例; 引数から設定を行い、特定のファイルを[コピー,削除,キャンセル]を行うかをユーザに聞く場合。
@echo off
if not exist %temp%\.BatchSelectorUI\BatchSelectorUI.bat call :downloadBSUI
set /p filename=ファイル名を入力してください:
call %temp%\.BatchSelectorUI\BatchSelectorUI.bat true %temp%\.BatchSelectorUI\test_UIText.txt %temp%\.BatchSelectorUI\test_UIHint.txt w s p false false
if %tsv_place2% == 1 goto copyfile
if %tsv_place2% == 2 goto deletefile
if %tsv_place2% == 3 goto cancel
:copyfile
copy %filename% %temp%
echo 処理が完了しました。
exit /b
:deletefile
del %filename%
echo 処理が完了しました。
exit /b
:cancel
echo キャンセルしました。
exit /b
:downloadBSUI
md %temp%\.BatchSelectorUI\
pushd %temp%\.BatchSelectorUI\
curl -sLJO https://github.com/akikawaken/BatchSelectorUI/releases/download/latest/BatchSelectorUI.bat
echo #ファイルに対する処理を選択してください。>test_UIText.txt
echo @3>>test_UIText.txt
echo コピー>>test_UIText.txt
echo 削除>>test_UIText.txt
echo キャンセル>>test_UIText.txt
echo testhint>test_UIHint.txt
echo 1:ファイルを一時フォルダにコピーします。>>test_UIHint.txt
echo 2:ファイルを削除します。>>test_UIHint.txt
echo 3:処理を行わず、キャンセルします。>>test_UIHint.txt
popd
exit /b
例だけじゃ99.9%わからないと思うのでちゃんと書きます...
ダウンロード方法
ダウンロードはcurlコマンドを利用することを推奨します。 curlコマンドの場合、curl -sLJO https://github.com/akikawaken/BatchSelectorUI/releases/download/latest/BatchSelectorUI.bat
で"リリース"最新版をダウンロードさせることができます。
ダウンロード先("BatchSelectorUI.bat"を配置する場所)はどこでも大丈夫ですが、あなたのソフトウェアの他のファイルを%temp%配下に配置する場合を除き、%temp%配下はお勧めしません。
設定方法 / 呼び方 - (引数)
2種類ある設定方法のうち、標準的な方です。
呼び方はBatchSelectorUI.bat true %temp%\.BatchSelectorUI\test_UIText.txt %temp%\.BatchSelectorUI\test_UIHint.txt w s p false false
の様にします。
引数について:
%1はtrue固定です。 true以外だとコード内設定が適用されます。
%2にはUIの選択肢ファイルパスを指定します。 もちろん変数使えます。(たぶん!)
%3にはUIのヒントファイルパスを指定します。 これも変数使えるはず
%4には選択中矢印を上に動かすキーを指定します。 0123456789abcdefghijklmnopqrstuvwxyz
が使えます。 指定できるのはこのうちの一つだけです。
%5には選択中矢印を下に動かすキーを指定します。 指定できるのは%4のヤツと同じです。
%6にはセレクトキーを指定します。 選択キーのことです。 指定できるのは%4と以下略
%7にはtsv_noClsを有効にするかどうかを指定します。 真偽で入力するべきです。 真だとclsコマンドが実行されません。
%8にはtsv_showMoveInfoを有効にするかどうかを指定します。 真偽で入力するべきです。 真だと現在位置とか直前に入力したキーとかが画面に表示されます。
設定方法 / 呼び方 - (コード内)
2種類ある設定方法のうち、誰得な方です。でもBatchSelectorUIの前身はこの設定方法しかありませんでした!
呼び方は引数を指定しないか、%1をtrue以外にしてください。
コード覗けば設定方法は多分わかるので説明は省略します。
ユーザ選択の取得 / 付番方式
%tsv_place2%にユーザが選択した選択肢の番号が格納されています。
選択肢の番号の付番方式は、"UI選択肢ファイルの当該選択肢の行数 - 2"した数です。
UI 選択肢/ヒント ファイル
つくったひととか
設計 | akikawa9616 |
---|---|
コード記述 | akikawa9616 |
広報 | akikawa9616 |