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

PySide6 QTabWidget添加标签后无法正常显示子部件内容问题

问题根因
  • 自定义标签页类内部额外创建了子QWidget承载内容,但该子控件没有绑定到作为标签页根节点的外层类实例上,导致根节点为空,无内容渲染
  • 多余的show()调用不需要,QTabWidget会自动管理各标签页的显隐状态
修复方案

直接将布局绑定到自定义标签页类的实例本身,不需要额外嵌套一层子QWidget,修正后的代码如下:

class WelPage(QWidget):
    def __init__(self):
        super().__init__()
        # 布局直接绑定到当前实例self
        grid = QGridLayout(self)
        lab_name = QLabel("This is a label")
        git_link = QLabel("This is a link")
        git_link.setOpenExternalLinks(True)
        yt_link = QLabel("Another Link")
        yt_link.setOpenExternalLinks(True)

        grid.addWidget(lab_name, 0, 1)
        grid.addWidget(git_link, 1, 0)
        grid.addWidget(yt_link, 1, 3)


class AboutPage(QWidget):
    def __init__(self):
        super().__init__()
        # 布局直接绑定到当前实例self
        lo = QVBoxLayout(self)
        purpose = QLabel("A really long label")
        lo.addWidget(purpose)

主函数逻辑无需调整即可正常运行,也可以删除多余的tw.show()调用,父控件显示时会自动渲染子组件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 04:45:03