田中太郎
Pythonスクリプトを実行するときに実行引数をGUIで与えます
仕様
a = main(<引数名のリスト>)
main.run()
でGUIが立ち上がります。
各エントリーボックスに入力して「Run」をクリックするとコマンドラインに表示されます
「*」リスクがついている引数名は必須入力でエントリーボックスに入力しないと「Run]が動きません
gui_arg.py
import re
import tkinter as tk
class main:
def __init__(self, texts):
self.texts = texts
self.app = tk.Tk()
self.app.title("App Title")
self.button = tk.Button(
self.app, command=self.get_func, text="Run")
self.button.grid(column=0, row=0)
self.entry = {i: "" for i in texts}
self.label = {i: "" for i in texts}
for row, text in enumerate(texts, 1):
self.label[text] = tk.Label(self.app, text=text)
self.label[text].grid(column=0, row=row)
self.entry[text] = tk.Entry(self.app)
self.entry[text].grid(column=1, row=row)
def get_func(self):
result = []
for text in self.texts:
if self.entry[text].get() == "":
if re.search(r"^\*", text) is not None:
return
result.append(self.entry[text].get())
for i in result:
print(i)
self.app.destroy()
def run(self):
self.app.mainloop()
if __name__ == "__main__":
text = ["*hoge", "*fuga", "piyo"]
a = main(text)
a.run()
実行結果
GUIが立ち上がります
各エントリーボックスに値を入力して「Run」をクリックします
A
BB
CCC
まとめ
スクリプトを作成してもCUIに拒否反応を起こす方もいるので、GUIで実行できるように今回のクラスを作成しました
コメント