我希望只对特定的标签页进行更改。如何实现?
我尝试了以下两种方式:
QTabBar::tab#tbGeneral{... }
QTabWidget::tab-bar#tbGeneral{... }
没有一个有效。
我希望只对特定的标签页进行更改。如何实现?
我尝试了以下两种方式:
QTabBar::tab#tbGeneral{... }
QTabWidget::tab-bar#tbGeneral{... }
没有一个有效。
QTabBar::tab {
border: 1px solid #C4C4C3;
border-bottom-color: #C2C7CB;
border-top-left-radius: 4px;
border-top-right-radius: 4px;
padding: 1px 3px;
margin-left: 1px;
margin-bottom: 4px;
}
QTabBar::tab:selected {
background-color: #f14040;
border-bottom-style: none;
}
由于单独的选项卡不是小部件(或对象),它们没有对象名称或其他属性可将其识别为样式表。您只能使用伪类来使用样式表样式化选项卡。
您可能需要使用(C++)代码根据标签更改选项卡的样式。在Qt中自定义样式的推荐方式是通过QStyle
类。您可以子类化QStyle
或使用QProxyStyle
来更改特定小部件的外观。另一种选择(可能不被Qt推荐)是通过子类化QTabBar并重新实现QWidget::paintEvent(QPaintEvent *event)
函数。