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

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

这是我的样式表:

    self.tabWidget.setStyleSheet('''
            QTabBar::tab{padding: 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>QWidget{background: WHITE;}
            QTabWidget>{background: WHITE;}

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

【问题讨论】:

    标签: python pyqt pyqt5


    【解决方案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;} 行。
    猜你喜欢
    • 1970-01-01
    • 2016-08-20
    • 2015-07-14
    • 2018-06-13
    • 1970-01-01
    • 2011-02-02
    • 1970-01-01
    • 2018-02-18
    • 1970-01-01
    相关资源
    最近更新 更多