プログラミングど初級者ですが, PythonでGUIアプリケーションを作りたいと思い, 「PySimpleGUI」について勉強したのでまとめてみたいと思います.
参考にさせていただいたサイト
●PythonでGUIライブラリはどれがおすすめ?:
GUIとは何ぞや?から,PythonでGUIアプリケーションを作成するためのライブラリが4つ紹介されています.
●Tkinterを使うのであればPySimpleGUIを使ってみたらという話:
Pythonで標準で組み込まれている「Tkinter」よりも簡潔な記述でGUIを作成できる「PySimpleGUI」の紹介記事です.今回はこの「PySimpleGUI」を使ってGUIを作ってみようと思います.
●公式ドキュメント:
前述の「PySimpleGUI」の公式ドキュメントです.
開発環境
- Windows10 64bit
- Python3.7.3
- Anaconda
- PySimpleGUI 4.18.2
PySimpleGUI
まずはpipによってインストール
pip install pysimplegui
これでOK
作成するもの
今回は初めてなので, 2つの値の入力して, ボタンを押したらその和が表示されるシステムを作りたいと思います.
作成したコードと結果
書いたコードと結果がこちらです.
ほとんど下記のサイトのコードを転載しています.
Tkinterを使うのであればPySimpleGUIを使ってみたらという話
#! -*- coding:utf-8 -*-
import PySimpleGUI as sg
sg.theme('DarkAmber') # かっこいいのでテーマはダークにする
# テキストやボタンのレイアウト
layout = [[sg.Text('aとbの和を求めます')],
[sg.Text('a'),sg.InputText(key='num1')],
[sg.Text('b'),sg.InputText(key='num2')],
[sg.Button('計算実行')],]
# ウィンドウを表示
window = sg.Window('window1',layout)
# イベントループ
while True:
event, values = window.read()
if event == '計算実行':
result = float(values['num1'])+float(values['num2'])
show_message = "答えは"+str(result)+"です。"
print(show_message)
sg.popup(show_message)
# ウィンドウを閉じる
window.close()
何故かポップアップを表示させるのにprint(メッセージ文)を書かないとプログラムが動いてくれませんでした.
ちゃんと計算結果が表示されてます
まとめ
PySimpleGUIの構文は直感的にも理解しやすく、簡単にGUIを作成することができました.
できることがたくさんありそうなので勉強していこうとおもいます.