让QTabWidget放平

时间:2018-10-18 15:32:09

标签: qt qtabwidget

我有一个在QTabWidget旁边使用QTreeWidget的应用程序。在包含两者和QTreeWidget的框架上,我可以设置属性:

frameShape:NoFrame --and-- frameShadow:普通

这使外观看起来很平整。但是QTabWidget不具有这些属性,它具有阴影并被凸起。

如何使QTabWidget看起来平坦?

图片已附上。 Picture of Application

1 个答案:

答案 0 :(得分:0)

您可以使用样式表来自定义边框的外观。
使用样式表通常会重置一些默认/本地样式,例如背景,因此您需要根据需要明确定义它。

QTabWidget::pane { border: none; } // No border at all
QTabWidget::pane { border: 1px solid black; } // Simple black border

请参见examples


根据您的问题和屏幕截图,您的QTreeWidget实际上不是平坦的,具有inset样式,而QTabWidget具有outset。您还不确定要实现什么目标。但是我完全同意@ypnos的评论,您似乎需要QStackWidget而不是QTabWidget

我还认为您可能应该保留本机样式,该样式会根据操作系统和用户首选项而有所不同。如果要自定义应用程序的外观,则通常需要自定义所有应用程序并保持一致,而不仅仅是使您不满意的小部件。