BOM日本語変換その2
取りあえずはGUIは完成したが、
メニューバーは廃止した
なぜなら、ファイルを変換する(厳密にいえば言語を置換する)ツールなので
わざわざメニューバーをつける意味がないから
あとは必要な機能を実装していくのみだ
from tkinter import * import PySimpleGUI as sg from PySimpleGUI.PySimpleGUI import Input from os.path import basename import openpyxl sg.theme('LightBlue7') layout = [ [sg.Text('このGUIはKiCadで作成された部品表(BOM)の\n特定の文字を日本語に変換するものです', font='小塚ゴシック 18', pad=(20,20))], [sg.Text('csv形式だと変換できない為、まずはxls形式に直してください')], [sg.Text('まずはファイルを選択して下さい',font='小塚ゴシック 14', pad=(20,20))], [sg.InputText('ファイル名', enable_events=True, size=(50,4), font='小塚ゴシック 14'), sg.FileBrowse('ファイルを追加する', key='-FILES-', pad=(50,10), file_types=(('Excell ファイル', '*.csv'),) )], [sg.Button('ログをコピー'), sg.Button('ログをクリア')], [sg.Output(size=(100,8), key='-MULTILINE-')], [sg.T(' '*20)], [sg.Listbox([], size=(60,10), enable_events=True, key='-LIST-')], [sg.Button('読み込み', font='小塚ゴシック 17'), sg.T(' '*24), sg.Button('csv形式からxlsに変換'), sg.T(' '*30), sg.Button('日本語に変換する',font='小塚ゴシック 17')], [sg.Button('名前を変えて保存する', font='小塚ゴシック 17', pad=(30,30))] ] window = sg.Window('KiCad部品表(BOM)の文字変換GUI', layout=layout) [sg.InputText()] #空のリスト new_files = [] #空のリスト new_file_names = [] #ループ while True: event, values = window.read() if event in (None, '閉じる'):#ウィンドウの閉じる(バツボタン)を押した時の処理 break if event == '読み込み': print('処理を実行') print('処理対象ファイル:', new_files) #ポップアップ sg.popup('処理が終了しました') elif event =='ログをクリア': print('ログをクリア') window.FindElement('-MULTILINE-').Update('') elif event =='ログをコピー': window.FindElement('-MULTILINE-').Widget.clipboard_append(window.FindElement('-MULTILINE-').Get()) sg.popup('ログをコピーしました') new_files.clear() new_file_names.clear() window['-LIST-'].update('') elif values['-FILES-'] != '': print('FilesBrowse') new_file_names.extend([basename(file_path) for file_path in new_files]) print('ファイルを追加') window['-MULTILINE-'].update(new_file_names) #アウトプットに表示する window.close()