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

Posted

技术标签:

【中文标题】PyQt5 Tabwidget 标签栏空白区域背景颜色【英文标题】:PyQt5 Tabwidget tab bar blank area background color 【发布时间】:2020-03-06 11:48:26 【问题描述】:

大家好,如何在空白标签栏区域填充背景颜色。 我检查了这个链接:how to change background color for qtabbar empty space pyqt,但没有成功。

这是我的样式表:

    self.tabWidget.setStyleSheet('''
            QTabBar::tabpadding: 0px;
            QTabBar::tab  height: 150px; border: 1px solid #FFFFFF;
            QTabBar::tab background-color: rgb(34, 137, 163);color: white;

            QTabBar::tab:selected background-color: rgb(48, 199, 184,);
                color: #000000
            

            QTabWidget>QWidget>QWidgetbackground: WHITE;
            QTabWidget>background: WHITE;

            QTabWidget::pane top: 0px;
            QTabWidget::tab-bar right: 0px;
            QTabBar  background: transparent; 
        ''')

【问题讨论】:

【参考方案1】:

这取决于documentMode

如果是False(默认),则必须设置TabWidget背景,并确保其autoFillBackground()设置为True;这很重要,因为 Qt 在设置样式表时会自动取消选择它。 请注意,在这种情况下,背景也会“围绕”整个选项卡小部件,如果不想要它,只需禁用边框即可。

    self.tabWidget.setStyleSheet('''
        QTabWidget 
            background: magenta;
            border: none;
        
        QTabBar::tab 
            background: green;
        
    ''')

如果打开了文档模式,你可以设置标签栏的背景:

    self.tabWidget.setStyleSheet('''
        QTabBar 
            background: magenta;
        
        QTabBar::tab 
            background: green;
        
    ''')

【讨论】:

@DhurjatiRiyanBorah 我刚刚检查了你的样式表,它可以工作。确保您没有同时设置调色板,始终检查是否设置了 autoFillBackground每次您在 Designer 中更新样式表,并删除“>” QTabWidget>background: WHITE; 行。

以上是关于PyQt5 Tabwidget 标签栏空白区域背景颜色的主要内容,如果未能解决你的问题,请参考以下文章

如何仅隐藏 QTabWidget 栏 PyQt5 [关闭]

如何获取此标签栏

PyQt5 Tab Widget:如何在鼠标单击时获取活动选项卡窗口的索引?

如何设置状态栏或安全区域以删除 iPhone X 上的空白?

pyqt5 tabwidget 垂直制表符 水平文本左对齐

如何设置 QTabWidget 的标签栏长度?