ryotankの備考録日記

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

基板作りチェックリストその30

「記入」ボタンを押して文字を描画出来るようにするには

Buttonにkeyイベントをつけて
イベントを発生するように設定する必要がある

そこで以下のように設定をした
一部を抜粋してコードを載せる

    if main_event == '-BOARDinput-form-':    #基板名入力フォームボタンが押されたら
        #サブ画面を開く時に毎回layoutを宣言する
        #エラーが発生せず、何度でも展開できる
        sg.theme('LightGray3') #テーマの設定
        sub_layout = [
            [sg.Text('基板名 入力欄', font=14), sg.T(' ' *10), sg.Input('')],
            [sg.T('')],
            [sg.Text('リスト作成日 入力欄',  font=14), sg.Input('')],
            [sg.T('')],
            [sg.T(' '*20), sg.Button('記入', font=16, key='-Data_ENTER-')]
        ]

        sub_window = sg.Window('基板名入力フォーム (1/2)', layout= sub_layout)

見ての通り「記入」ボタンに-Data_ENTER-というkeyイベントを設定した

そして前回のその29の記事では

elif sub2_event == '-Data_ENTER-': #「記入」ボタンが押されたら
            #フォームで入力した項目がPDFのヘッダーとフッター上に記載される
            pdf_Draw_characters()

としてイベントが発生した場合の処理をつけ
ボタンが押された場合にPDF上のヘッダーとフッターに入力項目を書き込むという
処理が実行される

次回は、テストコードで上記のコードが動作するかを確認する