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

PySimpleGUI窗口启动时默认选中非首个标签页如何消除切换延迟?

解决PySimpleGUI默认选中指定标签页无延迟的问题

问题出在你是窗口渲染完成后再切换标签,所以会出现先显示第一个标签再切换的延迟。正确的做法是在创建TabGroup组件时就指定默认选中的标签页,这样窗口启动时直接加载目标标签,完全不会有延迟。

具体有两种实现方式:

  1. 通过标签标题指定(selected_title参数)
    假设你的TabGroup布局里,目标标签页的标题是"加密"(对应key-ENCR_TAB-),定义TabGroup时加上selected_title参数:
layout = [
    [sg.TabGroup(
        [
            [sg.Tab('标签1', tab1_layout), sg.Tab('加密', tab2_layout, key='-ENCR_TAB-')]
        ],
        selected_title='加密'  # 直接指定默认选中的标签标题
    )]
]

window = sg.Window("foobar", layout, margins=(2, 2), finalize=True)
# 不需要再调用window.Element('-ENCR_TAB-').Select()
  1. 通过索引指定(selected_index参数)
    标签页的索引从0开始计数,第二个标签页索引是1,所以可以这样写:
layout = [
    [sg.TabGroup(
        [
            [sg.Tab('标签1', tab1_layout), sg.Tab('加密', tab2_layout, key='-ENCR_TAB-')]
        ],
        selected_index=1  # 索引1对应第二个标签页
    )]
]

window = sg.Window("foobar", layout, margins=(2, 2), finalize=True)

这样修改后,窗口启动时会直接显示你指定的标签页,完全不会有之前的切换延迟。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 13:03:12