QTabBar:更改背景颜色时选项卡的边框消失

QTabBar:更改背景颜色时选项卡的边框消失,qt,tabs,qtabbar,Qt,Tabs,Qtabbar,我想将QT应用程序(基于QT 4.8.6)的默认背景颜色更改为不同的(较深的)灰色。我通过添加 background-color: #A3A3A3; 到我的QSS文件中的QWidget部分。除了选项卡之外,这一切都很好。当我没有这一行时,我的应用程序中的选项卡看起来正常,因此所选选项卡在选项卡和选项卡小部件之间没有一行,其他所有选项卡都有一个边框(适用于顶部和底部选项卡) 当我添加背景色时,(未选中的)选项卡和选项卡小部件之间的线消失,包括顶部和底部选项卡。我尝试向选项卡小部件窗格添加边框,但

我想将QT应用程序(基于QT 4.8.6)的默认背景颜色更改为不同的(较深的)灰色。我通过添加

background-color: #A3A3A3;
到我的QSS文件中的QWidget部分。除了选项卡之外,这一切都很好。当我没有这一行时,我的应用程序中的选项卡看起来正常,因此所选选项卡在选项卡和选项卡小部件之间没有一行,其他所有选项卡都有一个边框(适用于顶部和底部选项卡)

当我添加背景色时,(未选中的)选项卡和选项卡小部件之间的线消失,包括顶部和底部选项卡。我尝试向选项卡小部件窗格添加边框,但这也会在所选选项卡和选项卡小部件之间添加边框

如何更改应用程序的背景颜色,使选项卡仍保持应有的外观

更新:

根据QSS文件的要求。我删除了与此问题无关的所有内容:

QWidget
{
   font-weight: bold;
   background-color: #A3A3A3;
}

QTabBar::tab:!selected
{
   font-weight: normal;
}
使用此QSS文件,背景较暗,但选项卡和窗格之间没有线条。当我禁用背景色线时,选项卡显示正常(但窗口当然变为浅灰色)

还有一个指示问题的图像:


为任何
QWidget
添加样式表项时,请注意,它通常会破坏任何先前存在的默认样式。最好的做法是从一开始就完全设置控件、其子控件和伪状态的样式。您也可以通过调色板更改背景色,但我不建议您这样做,因为样式表功能更强大,而且调色板和样式表不能很好地配合使用。谢谢您的回答。我担心这个,看起来标签和窗格之间的分隔也是基于小部件的,因此得到了相同的颜色。有没有办法从窗口中提取完整的样式表,这样我就可以重用它以获得不同的背景?没有,除非您从磁盘或qrc或其他地方将其作为文本文件读取,否则无法获取样式表。糟糕的方法。您最好弄清楚哪个小部件/子控件需要调整其边框颜色,并在样式表中进行调整。如果我读对了这个问题,我认为它是qtabar或QTabWidget控件之一。查看参考资料:另外,将样式表张贴在您试图修复选项卡边框的位置可能有助于了解您需要做什么。我很确定这一切都可以/应该从样式表中修复。Nicolas,我用简化的QSS文件更新了这个问题。我只留下了与此相关的部分,问题仍然存在。