为 QTabWidget 中的非选定选项卡着色
Color the Non selected tabs in a QTabWidget
在 3-tab QTabWidget 中,我想更改 NON-SELECTED 选项卡的背景颜色,让选定的选项卡保持默认背景颜色(白色)。换句话说,我想更改显示在所选选项卡上方的两个未选中选项卡的一小部分的颜色。
我浏览了该站点并找到了一些代码,但我无法将它们翻译成我需要的格式。到目前为止,我在我的程序的初始化中有这个,但它不完整并且不起作用。
self.ui.tabWidget.tabBar().setStyleSheet('xxxxxxxx {background-color: yellow }')
您必须使用 QTabBar::tab:!selected
:
from PyQt5 import QtWidgets
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
w = QtWidgets.QTabWidget()
# For more information to customize the QTabWidget and QTabBar check
# https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar
w.setStyleSheet(
"""
QTabBar::tab:!selected {
background: green
}
"""
)
for i in range(5):
w.addTab(QtWidgets.QWidget(), f"tab-{i}")
w.show()
w.resize(640, 480)
sys.exit(app.exec_())
你的情况:
self.ui.tabWidget.setStyleSheet("""QTabBar::tab:!selected{ background: green }""")
在 3-tab QTabWidget 中,我想更改 NON-SELECTED 选项卡的背景颜色,让选定的选项卡保持默认背景颜色(白色)。换句话说,我想更改显示在所选选项卡上方的两个未选中选项卡的一小部分的颜色。
我浏览了该站点并找到了一些代码,但我无法将它们翻译成我需要的格式。到目前为止,我在我的程序的初始化中有这个,但它不完整并且不起作用。
self.ui.tabWidget.tabBar().setStyleSheet('xxxxxxxx {background-color: yellow }')
您必须使用 QTabBar::tab:!selected
:
from PyQt5 import QtWidgets
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
w = QtWidgets.QTabWidget()
# For more information to customize the QTabWidget and QTabBar check
# https://doc.qt.io/qt-5/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar
w.setStyleSheet(
"""
QTabBar::tab:!selected {
background: green
}
"""
)
for i in range(5):
w.addTab(QtWidgets.QWidget(), f"tab-{i}")
w.show()
w.resize(640, 480)
sys.exit(app.exec_())
你的情况:
self.ui.tabWidget.setStyleSheet("""QTabBar::tab:!selected{ background: green }""")