# freesimpleguiにてテキスト領域に変数の値を表示する
# レイアウト内でsg.Textの中に変数とkeyを指定する。
# keyは小文字でもよい。変数名(小文字)の前後に「-」をkeyにすると変数とkeyの対応関係がわかりやすい。
# イベントがないとwindowを表示できない。while True:があって初めてGUIのイベントが成立する。
# イベントによる処理分岐の後もしくは中でwindow[キー].updateで変数を表示させる。
# 数値は文字列に変換しておく。window[キー].update(文字列)
# 以下、AIによるサンプルコード
import FreeSimpleGUI as sg
# 1. 変数の値
data_variable = 0
# 2. レイアウトの定義(Text要素に key を割り振る)
layout = [
[sg.Text("現在の値:", key="-TEXT_LABEL-"), sg.Text(str(data_variable), key="-TEXT_VALUE-")],
[sg.Button("カウントアップ"), sg.Button("終了")],
]
# 3. ウィンドウの作成
window = sg.Window("変数の値表示", layout)
# 4. イベントループ
while True:
event, values = window.read()
if event == sg.WIN_CLOSED or event == "終了":
break
if event == "カウントアップ":
data_variable += 1 # 変数の値を更新
# 5. update() メソッドでテキスト要素を書き換える
window["-TEXT_VALUE-"].update(str(data_variable))
# 6. ウィンドウを閉じる
window.close()