如何在Qt Designer中插入QTabBar?

11

这可能是一个非常愚蠢的问题,但我在Qt Designer中找不到QTabBar。 在“容器”组中有QTabWidged,但它并不相同 - 我不需要不同的页面,我只需要选项卡栏。

(我在debian上使用KDE4下的4.7.2版本的Qt Designer。)

3个回答

7

设计师中没有QTabBar这一项,唯一的方法是创建一个普通的QWidget并将其提升为选项卡栏,但您需要在代码中设置整个内容。

至于页面,您应该意识到您也可以在设计师中将QTabWidget的内容窗口提升为任何QWidget的子类,内置或自己创建的。


1
你的意思是在代码中进行推广还是有一种在设计师中实现它的方法?我不需要页面的原因是每个“页面”上都会有一个相当大的小部件,因此我更喜欢只有一个该小部件的实例,并在每次选项卡单击时重新加载其内容。 - gorn
您IP地址为143.198.54.68,由于运营成本限制,当前对于免费用户的使用频率限制为每个IP每72小时10次对话,如需解除限制,请点击左下角设置图标按钮(手机用户先点击左上角菜单按钮)。 - Phrogz

2
在Qt Designer 4.8中,您可以在想要QTabBar的位置添加一个小部件,然后右键单击并选择“晋升为▸ QTabBar”。(注意:“晋升为”,而不是“变形为”)

0
创建一个自定义的选项卡小部件类,继承自QTabWidget,并将选项卡栏设置为您自定义的选项卡栏。就像这样:
class CustomTabWidget(QTabWidget):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.setTabBar(CustomTabBar())

之后,您只需在Qt Designer中促进您现有的QTabWidget元素,您希望更改其选项卡栏。 注意:我已经在PySide6中完成了这个操作。尽管如此,我希望至少能给出解决问题的思路。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接