ryotankの備考録日記

趣味の電子工作についての備考録などなど

栄養素記録補助GUIその2

beta-boostcircit.hatenablog.com
からの続き

ボタンの配置決めとPopupYesNoについて解説する回

justificationというのを使って配置を指定する

layout = [  [sg.Text('Stopwatch', size=(20, 2), justification='center')]]

こんな感じで指定をしていけると思って試してみたが


[sg.Button('一時保存', key='-SAVE-', justification='center'), \
TypeError: __init__() got an unexpected keyword argument 'justification'
というエラーを吐いた

どうやら使用出来るのは、sg.Textに限定されるみたい^^:

なので

[sg.T(' ' * 15), sg.Button('一時保存', key='-SAVE-', )], #6行目
                
[sg.Button('セルへ書き込む', key='-Write-'), sg.Button('クリア', key='-CLAER-'), sg.Button('閉じる', key='-CLOSE-')] #7行目

という風に書いてみた

これは、The PySimpleGUI Cookbookというサイトに
各サンプルコードと実行した時のGUI画面が載っており
それのRealtime Buttons (Good For Raspberry Pi)という項目から
引用している

sg.T(' ' * 15)

は' 'という空白を入力して15ミリ?移動させろという内容らしい

これを実際にGUIに組み込んだのが

[sg.T(' ' * 50), sg.Button('一時保存', key='-SAVE-', )], #6行目

次の画像

f:id:ryotank:20210803193939p:plain
ボタンの位置を調整 値15にGUI

ちなみに15の値を40に変更した場合は

f:id:ryotank:20210803194200p:plain
ボタンの位置を調整 値15から40に変更した
[sg.Button('セルへ書き込む', key='-Write-'), sg.T(' ' * 20), \
 sg.Button('クリア', key='-CLAER-'), 
 sg.T(' ' * 40), sg.Button('閉じる', key='-CLOSE-')] #7行目

という形に書けた


PopupOKは、こんな感じでメッセージを出せるようになる

f:id:ryotank:20210803194352p:plain
Popupokメッセージ出力時

PopupOKは選択肢にOKのみが表示されて

PopupYesNoは選択肢にYesNoがあり見慣れた感じがする

f:id:ryotank:20210803194556p:plain
PopupYesNoメッセージ出力時

ポップアップには、まだいくつか種類があるみたい

状況によって色んなものを使っていきたい

最後にボタンの位置を全て調整したものとそのコードを載せる

f:id:ryotank:20210803194715p:plain
全てのボタンを調整したver
main_layout =[
                カロリーなどの項目は割愛する

                [sg.T(' ' * 50), sg.Button('一時保存', key='-SAVE-', )], #6行目
                
                [sg.Button('セルへ書き込む', key='-Write-'), sg.T(' ' * 20), sg.Button('クリア', key='-CLAER-'), \
                 sg.T(' ' * 40), sg.Button('閉じる', key='-CLOSE-')] #7行目
]

ではまた