Launcher.pyに引数を与えずに起動した場合、以下の順番で検索し、最初に見つかったリストファイルを読み込みます
Launcher.py の起動時に -s='リストファイルパス'
を与えることで、任意のリストファイルを読み込めます。
リストファイルのパスは、Launcher/scripts
からの相対パスか、絶対パスで与えます。
例: VASP/Launcher.pyの起動: python Launcher.py -s=VASP.list
リストファイルは2つのセクション ( [] で囲まれた行をセクションと呼びます) で構成されています。
[extra_scripts]
extra/6-041-VASP.ini
extra/6-041b-VASP-Utils.ini
:extra/6-042-VASP-Obsolete.ini
extra/7-012-Crystal.ini
[remove_scripts]
1-001-Help-separator.ini
:5-011-Help.ini
5-012-Install.ini
例1: 外部プログラムの起動 (フォアグラウンド実行/同期実行)
[Button1.app]
Caption=app
d:/a.exe
End
説明: ボタンに "app"
と表示し、ボタンをクリックしたときに a:/a.exe
を実行します。
ただし、d:/a.exe
はフォアグラウンドアプリとして同期的に実行されるので、
a.exe を終了するまでLauncher.pyの操作はできません。
例2: 外部プログラムの起動 (バックグラウンド実行/非同期実行)
[Button1.app]
Caption=app
$(start) d:/a.exe
End
説明: $(start) コマンドから実行することで、d:/a.exe
をバックグラウンドで非同期実行できます。
$(start)
実行直後から、Launcher.pyの操作が可能です。
例3: ファイルを選択し、そのパスをpythonプログラムに渡して非同期実行
[Button1.app]
Caption=app
get_open_file_name "*.xlsx" "." "データファイル(.xlsx)を選択してください"
set file_path=$o
$(start) "$(python_path)" hogehoge.py "$(file_path)"
End
説明:
ファイル選択ダイアログを表示し、選択したファイルのパスが
変数 $o に入ります。
$o
は他のコマンドで再利用される可能性があるため、 set
コマンドで 変数 $(file_path) に $o の値を設定しています。
pythonプログラムを実行する場合、$(python_path)
変数には python ver3のパスが入っています。
パス名には空白が入っている可能性があるので、""
で囲います。
例4: 入力ダイアログの利用
[Button1.app]
Caption=app
set opt=hogehoge
$(start) "$(python_path)" hogehoge.py "$(opt)"
input opt hogehoge.py のパラメータを入力してください
End
説明: input コマンドで、$(opt)
変数の内容を初期値としてテキストボックスのあるダイアログを表示します。
OKボタンを押すと、テキストボックスの内容が
$(opt) 変数に代入され、次の行を実行します。
Cancelボタンを押すと、スクリプトを終了します
例5: ユーザ定義ダイアログの利用
[Button1.app]
Caption=app
set_if_null method method=linear
new_dialog
add_dialog label label1 "text=アルゴリズム:"
add_dialog listbox\
method\
width=50\
height=5\
relief=groove\
"def_val=$(method)"\
"linear"\
"gpr"\
"label_tail="
custom_dialog "dialog test"
$(start) "$(python_path)" hogehoge.py $(method)
End
説明:
Launcher.pyの変数は、使用する前に初期化されている必要があります。
ここでは、
set_if_null method method=linear
により、method変数が未定義あるいは空白の場合、method=linear
の代入を行い、method変数を初期化しています。
new_dialogで、ダイアログの作成を開始します。
add_dialogで、ダイアログの要素を追加していきます。
add_dialog labelで、ダイアログの最初に "アルゴリズム"
という行を表示します。
add_dialog listboxで、アルゴリズムを "linear", "gpr"
から選択するリストボックスを表示します。
リストボックスの選択結果は $(method)
変数に入ります。
custm_dialogコマンドによって、タイトルが
"dialog
test"で、OKとCancelボタンのあるダイアログが表示されます。
OKボタンを押すと、custom_dialog以降が実行されます。
Cancelボタンを押すと、custom_dialog以降は実行されず、スクリプトを終了します
例6: 複雑なダイアログの例
スクリプトは示しませんが、タブでページを切り替え、順次ボタンを押してタスクを実行するダイアログも作れます。