前提・実現したいこと
Pythonにて、PySimpleGuiを使って簡易的な表示画面を作ろうとしています。
希望動作は、テキストボックス内で画面の追従し、特定の行に背景色などの装飾を付けたいです。
・printコマンドでOutputの画面に文字を出すと更新された際に画面が追従され最終行が表示された状態になりますが、Output画面だと背景色の装飾を付けられない
・Multiline.printでMultilineに文字を出すと更新された際に画面が追従されず、最初の行が表示されたままの状態になります。
・sg.Printコマンドを使うと更新された際に画面が追従され最終行が表示された状態になりますが、GUI内に埋め込めません。
どれかの手法を解決する手段はありますでしょうか?
該当のソースコード
Python
1import PySimpleGUI as sg 2 3layout = [ 4 [sg.Output(size=(30, 10), key='-Output-')], 5 [sg.Multiline(size=(30,10), border_width=2, key='-Multiline-')], 6 [sg.Submit(size=(15,2), pad=((50, 0), 3),button_text='test')] 7 ] 8 9window = sg.Window('sample', layout) 10 11while True: 12 event, values = window.read() 13 14 if event is None: 15 print('exit') 16 break 17 18 if event == 'test': 19 for i in range(50): 20 print(i) 21 window['-Multiline-'].print(i, background_color='red', text_color='white') 22 sg.Print (i, background_color='red', text_color='white') 23 24 25window.close() 26
補足情報
Python3.7.4
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。