ryotankの備考録日記

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

アリンコス部品管理その12

今回は入力フォーム2,3の動作確認その1を紹介

その1は、画面のレイアウトを整える

入力フォーム2は、価格やパッケージ名、備考を入力する画面

#2022-3-18作成

#画面を見やすくする為の空白エリアを入れた
#動作確認その1は、画面のレイアウト

import PySimpleGUI as sg

sg.theme('LightBlue3')

sub_layout = [
    [sg.Button('入力1', key='-Input-'), sg.Button('入力2', key='-Input2-'),
     sg.Button('入力3', key='-Input3-'), sg.Button('表示', key='-Display-')],  #1行目
    [sg.Text('【入力画面2】', font=('小塚ゴシック', 26))],   #2行目
    [sg.Text('価格', font=('小塚ゴシック', 16)), sg.T(' '*20),
     sg.Text('パッケージ名', font=('小塚ゴシック', 16)), sg.T(' '*30), sg.Text('所持個数', font=('小塚ゴシック', 16)), sg.Text('')],     #3行目
    [sg.Input(size=(10,2), key='-price-'), sg.Text('円', font=('小塚ゴシック', 16)), sg.T(' '*20),
     sg.Input(size=(20,2), key='-package_name-'), sg.T(' '*20), sg.Input(size=(10,2), key='-Number_of_possessions-'),
     sg.Text('個', font=('小塚ゴシック', 16))],   #4行目
    [sg.T(' '*20)],  #画面を見やすくする為の空白エリア
    [sg.T(' '*50), sg.Text('備考', font=('小塚ゴシック', 16))],     #5行目
    [sg.Multiline(size=(60,8), key='-remarks-')],    #6行目
    [sg.T(' '*20)],  #画面を見やすくする為の空白エリア
    [sg.Button('DBへ登録', key='-DB1-'), sg.T(), sg.T(' '*50), sg.Button('クリア', key='-Clear1-')]  #7行目
]

sub_window = sg.Window('アリンコス部品管理 2/3', sub_layout, size=(1000, 500))

while True:
    sub_event, sub_values = sub_window.read()

    if sub_event is None:
        break
sub_window.close()

入力フォーム3は、消費個数、消費した日付、理由を入力する画面

#2022-3-18作成
#入力フォーム3

#画面を見やすくする為の空白エリアを入れた
#動作確認その1は、画面のレイアウト

import PySimpleGUI as sg

sg.theme('LightBlue3')

sub2_layout = [
    [sg.Button('入力1', key='-Input-'), sg.Button('入力2', key='-Input2-'),
     sg.Button('入力3', key='-Input3-'), sg.Button('表示', key='-Display-')],  #1行目
    [sg.Text('【入力画面3】', font=('小塚ゴシック', 26))],   #2行目
    [sg.T(' '*20)],  #画面を見やすくする為の空白エリア
    [sg.Text('消費した時のみ入力する事!', font=('小塚ゴシック', 16))],     #3行目
    [sg.T(' '*20)],  #画面を見やすくする為の空白エリア
    [sg.Text('消費個数', font=('小塚ゴシック', 16)), sg.T(' '*50),
     sg.Text('消費した日付', font=('小塚ゴシック', 16)) ],   #4行目
    [sg.Input(size=(10,2), key='-Number_of_pieces_consumed-'), sg.T(' '*60), sg.Input(size=(15,2), key='-Date_consumed-')],     #5行目
    [sg.T(' '*20)],  #画面を見やすくする為の空白エリア
    [sg.Text('消費理由', font=('小塚ゴシック', 16)), sg.T(' '*110), sg.Text('どのような基板で使われているか',font=('小塚ゴシック', 16))],    #6行目
    [sg.Multiline(size=(45,8), key='-Reason_for_consump-'), sg.T(' '*60), sg.Multiline(size=(55,8), key='-Reason_for_consumption-')],     #7行目
    [sg.T(' '*20)],  #画面を見やすくする為の空白エリア
    [sg.Button('DBへ登録', key='-DB3-'), sg.T(' '*50), sg.Button('クリア', key='-Clear3-')]  #8行目
]

sub2_window = sg.Window('アリンコス部品管理 3/3', sub2_layout, size=(1000, 500))

while True:
    sub2_event, sub2_values = sub2_window.read()

    if sub2_event is None:
        break
sub2_window.close()

コードを走らせると、以下のように表示される

f:id:ryotank:20220319025537p:plain
入力フォーム2の画面

次に入力フォーム3

f:id:ryotank:20220319025608p:plain
入力フォーム3開発当初画面キャプチャ

次回は、入力フォーム1の動作確認その2で
ボタンの切り替えを実装する