如何在 OSX 上设置 Qt 的标签栏背景样式

Posted

技术标签:

【中文标题】如何在 OSX 上设置 Qt 的标签栏背景样式【英文标题】:How To Style Qt's Tab Bar Background on OSX 【发布时间】:2015-10-07 22:29:11 【问题描述】:

在 OSX 上使用 Qt,有没有办法改变 QTabWidget 内的深色标签栏背景颜色?

我已经尝试了各种 QSS 样式表的东西,并且可以更改除此之外的所有内容。

也许我可以通过拦截和调色板来做到这一点?也许我可以拦截绘画事件?也许我可以设置一些透明度?

【问题讨论】:

【参考方案1】:

我从 Colin Duquesnoy 的 Github 中找到了一个未记录的解决方案,它向我展示了这项技术:

QTabBar 
background-color: transparent;
qproperty-drawBase:0;

这会使深灰色背景变得透明,这会使背景从后面渗出。或者,如果您愿意,也可以将 background-color 切换为其他颜色值。

【讨论】:

【参考方案2】:

在 Windows 上测试

QTabWidget::pane
    border-top: 30px solid #595959;
    position: absolute;
    top: -30px;
    background: rgba( 0, 0, 0, 40% ); /* For transparent background */

【讨论】:

以上是关于如何在 OSX 上设置 Qt 的标签栏背景样式的主要内容,如果未能解决你的问题,请参考以下文章

CSSCSS 背景设置 ⑧ ( 背景设置案例 | 导航栏按钮 )

在 Qt 中为整个小部件设置样式表

无法为标签栏设置背景图片

如何在情节提要上更改标签栏背景颜色和标签栏项目颜色

PyQt5 Tabwidget 标签栏空白区域背景颜色

我只能在标签栏项目中显示文本并更改样式和位置吗