【问题标题】:How to set qss style for two different tab bars of two QTabWidget?如何为两个QTabWidget的两个不同标签栏设置qss样式?
【发布时间】:2020-09-07 03:02:48
【问题描述】:

有没有办法为两个 QTabWidgets 选项卡设置两个不同的 qss 样式规则。 我可以像这样为所有标签设置样式规则:

QTabBar::tab {...}

但它会为 QTabWidgets 的所有标签栏设置样式

如何为某个QTabWidget实例设置QTabBar标签样式?

【问题讨论】:

  • 你在哪个对象上使用setStyleSheet()
  • 哦,谢谢。我为整个应用程序设置样式。我愚蠢地忘记了我可以为任何对象做到这一点
  • 是的,您可以对每个对象执行此操作,但您也可以使用对象名称作为 ID,例如 QTabWidget#myobjname { ... }

标签: qt qt5 qtstylesheets


【解决方案1】:

您可以使用 QObject::setObjectName(const QString &name) 函数为每个 QTabWidget 赋予不同的名称,然后使用其名称为特定 QTabWidget 设置样式:

QTabWidget#tabname {...}

或者,您可以在代码端执行相同的操作,而无需使用 setObjectName() 函数,而是将样式表直接设置为小部件本身,如下所示:

ui->tabWidget->setStyleSheet(...);

【讨论】:

    猜你喜欢
    • 2020-01-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-30
    • 2012-12-08
    • 2016-09-14
    • 2021-02-05
    • 1970-01-01
    相关资源
    最近更新 更多