PySimpleGUIでポップアップの結果に応じて処理を変えたい時
PySimpleGUIを触っていると、popup
関数を使うことは多いと思います。
この popup
関数、様々なバリエーションが用意されており、例えばpopup_yes_no
を使って下記のようなコードを書いてみることが可能です。
import PySimpleGUI as sg pressed_text = sg.popup_yes_no("あなたはビールが好きですか?") # ビールが好きな人にしかアプリを起動させない if pressed_text == "Yes": start_app()
画面的には下記のようなポップアップが表示されます。
この場合のsg.popup_yes_no
の挙動ですが、シンプルに押したボタンのテキストが返されます。
つまり上記のケースだと、Yes
か No
が返ります。
またユーザがポップアップを選択肢以外の方法で閉じた場合、上の画像の場合、左上の赤ボタンを押したケースでは None
が返ります。
https://pysimplegui.readthedocs.io/en/latest/#popup-output
今回はYes or No
というポップアップでしたが、OK or cancel
などバリエーションが用意されています。
詳細は上の公式ドキュメントを参照してみてください。