【发布时间】:2015-10-07 22:29:11
【问题描述】:
在 OSX 上使用 Qt,有没有办法改变 QTabWidget 内的深色标签栏背景颜色?
我已经尝试了各种 QSS 样式表的东西,并且可以更改除此之外的所有内容。
也许我可以通过拦截和调色板来做到这一点?也许我可以拦截绘画事件?也许我可以设置一些透明度?
【问题讨论】:
标签: macos qt qtstylesheets qtabwidget qtabbar
在 OSX 上使用 Qt,有没有办法改变 QTabWidget 内的深色标签栏背景颜色?
我已经尝试了各种 QSS 样式表的东西,并且可以更改除此之外的所有内容。
也许我可以通过拦截和调色板来做到这一点?也许我可以拦截绘画事件?也许我可以设置一些透明度?
【问题讨论】:
标签: macos qt qtstylesheets qtabwidget qtabbar
我从 Colin Duquesnoy 的 Github 中找到了一个未记录的解决方案,它向我展示了这项技术:
QTabBar {
background-color: transparent;
qproperty-drawBase:0;
}
这会使深灰色背景变得透明,这会使背景从后面渗出。或者,如果您愿意,也可以将 background-color 切换为其他颜色值。
【讨论】:
在 Windows 上测试
QTabWidget::pane{
border-top: 30px solid #595959;
position: absolute;
top: -30px;
background: rgba( 0, 0, 0, 40% ); /* For transparent background */
}
【讨论】: