You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PySimpleGUI如何不使用sg.Output()在窗口中显示文本结果

实现方案

你可以提前在布局中预留带唯一key标识的sg.Text组件作为结果展示位,触发提交事件后调用该组件的update方法更新内容即可,不需要使用sg.Output组件,还可以自定义文本样式。

完整修改代码

import PySimpleGUI as sg

layout = [
         [sg.Text("Name: "), sg.Input()],
         [sg.Ok()],
         # 预留结果展示位,可自定义字体、颜色等样式
         [sg.Text("", key="-RESULT-", font=("微软雅黑", 12), text_color="navy")]
]

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

while True:
    events, values = window.read()
    # 处理窗口关闭逻辑,避免运行报错
    if events == sg.WIN_CLOSED:
        break
    if events == "Ok":
        name = values[0]
        # 定位到预留文本组件,更新展示内容
        window["-RESULT-"].update(f"输入的姓名为:{name}")

window.close()

补充说明

  • key是PySimpleGUI定位组件的核心标识,建议用特殊格式命名(比如前后加短横线)避免重复冲突
  • 若需要多次更新展示内容,重复调用update方法即可自动覆盖旧内容
  • 可以根据需求调整sg.Text的font、text_color、background_color等参数,自定义外观的灵活度远高于sg.Output

内容的提问来源于stack exchange,提问作者lucasestevam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 02:15:00