PySimpleGUI: Как я могу отобразить результат в своем окне?

#python #pysimplegui

Вопрос:

Как я могу отобразить результат в окне? Я использую PySimpleGUI для создания пользовательского интерфейса и пытаюсь отобразить результат в окне. Я пользовался sg.Output() , но мне не понравился его вид.

 import PySimpleGUI as sg

layout = [
         [sg.Text("Name: "), sg.Input()],
         [sg.Ok()]
]

window = sg.Window("Just a window", layout)

while True:
    events, values = window.read()
    name = values[0]
 

Теперь, как я могу отобразить имя в окне в виде текста? Я не хочу использовать sg.Output() .

Комментарии:

1. Нет ли других доступных текстовых полей, кроме sg.Output . Или для него есть параметры, которые изменят его внешний вид?

Ответ №1:

Вы можете использовать sg.Text в качестве вывода результата параметр size sg.Text (maximum, 1) «Кому», «нравится (40, 1) » или (0, 1) «.

 import PySimpleGUI as sg

layout = [
    [sg.Text("Name: "), sg.Input(key='INPUT')],
    [sg.Ok()],
    [sg.Text("", size=(0, 1), key='OUTPUT')]
]

window = sg.Window("Just a window", layout)

while True:
    event, values = window.read()
    if event == sg.WINDOW_CLOSED:
        break
    elif event == 'Ok':
        name = values['INPUT']
        window['OUTPUT'].update(value=name)

window.close()
 

Ответ №2:

Просто используйте текстовое поле:

 import PySimpleGUI as sg

output = sg.Text()
layout = [
         [sg.Text("Name: "), sg.Input()],
         [output],
         [sg.Ok()]
]

window = sg.Window("Just a window", layout)

while True:
    events, values = window.read()
    name = values[0]
    output.update(value=name)
 

Комментарии:

1. Если я наберу «Джек», появится только буква «J»

2. Я нахожу решение в документах. pysimplegui.readthedocs.io/en/latest/cookbook

3. @lucasestevam Я думаю, что ваши комментарии относились к другому ответу.