PySimpleGUI:如何在 window 中显示结果?

PySimpleGUI: How can I display a result in my window?

如何在 window 中显示结果? 我正在使用 PySimpleGUI 制作用户界面,并试图在 window 中显示结果。我正在使用 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]

现在,如何将 window 中的姓名显示为文本?我不想使用 sg.Output().

只需使用文本框:

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)

您可以使用sg.Text作为结果的输出,将sg.Text的选项size设置为(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()