- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
是否可以在 PYQT4 中更改 QTabWidget 选项卡的背景颜色?有一种方法可以更改文本的颜色,但不能更改选项卡的背景颜色。
我有一个包含多个选项卡的程序,我想为每个级别提供自己的背景颜色。见附件示例。
from PyQt4 import QtCore, QtGui
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
_fromUtf8 = lambda s: s
class Ui_Dialog(object):
def setupUi(self, Dialog):
Dialog.setObjectName(_fromUtf8("Dialog"))
Dialog.resize(661, 397)
self.verticalLayout = QtGui.QVBoxLayout(Dialog)
self.verticalLayout.setObjectName(_fromUtf8("verticalLayout"))
self.tabWidget = QtGui.QTabWidget(Dialog)
self.tabWidget.setObjectName(_fromUtf8("tabWidget"))
self.tab = QtGui.QWidget()
self.tab.setObjectName(_fromUtf8("tab"))
self.verticalLayout_2 = QtGui.QVBoxLayout(self.tab)
self.verticalLayout_2.setObjectName(_fromUtf8("verticalLayout_2"))
self.tabWidget_2 = QtGui.QTabWidget(self.tab)
self.tabWidget_2.setObjectName(_fromUtf8("tabWidget_2"))
self.tab_3 = QtGui.QWidget()
self.tab_3.setObjectName(_fromUtf8("tab_3"))
self.verticalLayout_3 = QtGui.QVBoxLayout(self.tab_3)
self.verticalLayout_3.setObjectName(_fromUtf8("verticalLayout_3"))
self.tabWidget_3 = QtGui.QTabWidget(self.tab_3)
self.tabWidget_3.setObjectName(_fromUtf8("tabWidget_3"))
self.tab_5 = QtGui.QWidget()
self.tab_5.setObjectName(_fromUtf8("tab_5"))
self.verticalLayout_4 = QtGui.QVBoxLayout(self.tab_5)
self.verticalLayout_4.setObjectName(_fromUtf8("verticalLayout_4"))
self.tabWidget_4 = QtGui.QTabWidget(self.tab_5)
self.tabWidget_4.setObjectName(_fromUtf8("tabWidget_4"))
self.tab_7 = QtGui.QWidget()
self.tab_7.setObjectName(_fromUtf8("tab_7"))
self.verticalLayout_5 = QtGui.QVBoxLayout(self.tab_7)
self.verticalLayout_5.setObjectName(_fromUtf8("verticalLayout_5"))
self.tabWidget_5 = QtGui.QTabWidget(self.tab_7)
self.tabWidget_5.setElideMode(QtCore.Qt.ElideRight)
self.tabWidget_5.setObjectName(_fromUtf8("tabWidget_5"))
self.tab_9 = QtGui.QWidget()
self.tab_9.setObjectName(_fromUtf8("tab_9"))
self.tabWidget_5.addTab(self.tab_9, _fromUtf8(""))
self.tab_10 = QtGui.QWidget()
self.tab_10.setObjectName(_fromUtf8("tab_10"))
self.tabWidget_5.addTab(self.tab_10, _fromUtf8(""))
self.verticalLayout_5.addWidget(self.tabWidget_5)
self.tabWidget_4.addTab(self.tab_7, _fromUtf8(""))
self.tab_8 = QtGui.QWidget()
self.tab_8.setObjectName(_fromUtf8("tab_8"))
self.tabWidget_4.addTab(self.tab_8, _fromUtf8(""))
self.verticalLayout_4.addWidget(self.tabWidget_4)
self.tabWidget_3.addTab(self.tab_5, _fromUtf8(""))
self.tab_6 = QtGui.QWidget()
self.tab_6.setObjectName(_fromUtf8("tab_6"))
self.tabWidget_3.addTab(self.tab_6, _fromUtf8(""))
self.verticalLayout_3.addWidget(self.tabWidget_3)
self.tabWidget_2.addTab(self.tab_3, _fromUtf8(""))
self.tab_4 = QtGui.QWidget()
self.tab_4.setObjectName(_fromUtf8("tab_4"))
self.tabWidget_2.addTab(self.tab_4, _fromUtf8(""))
self.verticalLayout_2.addWidget(self.tabWidget_2)
self.tabWidget.addTab(self.tab, _fromUtf8(""))
self.tab_2 = QtGui.QWidget()
self.tab_2.setObjectName(_fromUtf8("tab_2"))
self.tabWidget.addTab(self.tab_2, _fromUtf8(""))
self.verticalLayout.addWidget(self.tabWidget)
self.buttonBox = QtGui.QDialogButtonBox(Dialog)
self.buttonBox.setOrientation(QtCore.Qt.Horizontal)
self.buttonBox.setStandardButtons(QtGui.QDialogButtonBox.Cancel|QtGui.QDialogButtonBox.Ok)
self.buttonBox.setObjectName(_fromUtf8("buttonBox"))
self.verticalLayout.addWidget(self.buttonBox)
self.retranslateUi(Dialog)
self.tabWidget.setCurrentIndex(0)
self.tabWidget_2.setCurrentIndex(0)
self.tabWidget_3.setCurrentIndex(0)
self.tabWidget_4.setCurrentIndex(0)
self.tabWidget_5.setCurrentIndex(0)
QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("accepted()")), Dialog.accept)
QtCore.QObject.connect(self.buttonBox, QtCore.SIGNAL(_fromUtf8("rejected()")), Dialog.reject)
QtCore.QMetaObject.connectSlotsByName(Dialog)
def retranslateUi(self, Dialog):
Dialog.setWindowTitle(QtGui.QApplication.translate("Dialog", "Dialog", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget_5.setTabText(self.tabWidget_5.indexOf(self.tab_9), QtGui.QApplication.translate("Dialog", "Tab 9", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget_5.setTabText(self.tabWidget_5.indexOf(self.tab_10), QtGui.QApplication.translate("Dialog", "Tab 10", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_7), QtGui.QApplication.translate("Dialog", "Tab 7", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget_4.setTabText(self.tabWidget_4.indexOf(self.tab_8), QtGui.QApplication.translate("Dialog", "Tab 8", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_5), QtGui.QApplication.translate("Dialog", "Tab 5", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget_3.setTabText(self.tabWidget_3.indexOf(self.tab_6), QtGui.QApplication.translate("Dialog", "Tab 6", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_3), QtGui.QApplication.translate("Dialog", "Tab 3", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget_2.setTabText(self.tabWidget_2.indexOf(self.tab_4), QtGui.QApplication.translate("Dialog", "Tab 4", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab), QtGui.QApplication.translate("Dialog", "Tab 1", None, QtGui.QApplication.UnicodeUTF8))
self.tabWidget.setTabText(self.tabWidget.indexOf(self.tab_2), QtGui.QApplication.translate("Dialog", "Tab 2", None, QtGui.QApplication.UnicodeUTF8))
#
#------------------------------------------------------------------------------
#
# For Testing
#
self.tab_33 = QtGui.QWidget()
self.tabWidget.addTab(self.tab_33, "Hell")
QColor = QtGui.QColor(255, 85, 0)
a = self.tabWidget.tabBar()
a.setTabTextColor(0, QColor)
if __name__ == "__main__":
import sys
app = QtGui.QApplication(sys.argv)
Dialog = QtGui.QDialog()
ui = Ui_Dialog()
ui.setupUi(Dialog)
Dialog.show()
sys.exit(app.exec_())
最佳答案
您可以使用 qt 样式表来自定义 QTabWidget 的外观:
http://doc.qt.digia.com/4.7-snapshot/stylesheet-examples.html#customizing-qtabwidget-and-qtabbar
例如:
self.tabwidget.setStyleSheet('QTabBar::tab {background-color: red;}')
关于python - 更改 QTabWidget 选项卡的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12901095/
我开发了一个程序,我有 10 个备份。我向其中添加了一些行,当我编译项目时,现在出现以下错误: C:\Qt\Qt5.0.1\5.0.1\mingw47_32\include\QtWidgets\qta
我在 Ubuntu 上使用 Qt-5.8。这就是我的 QTabWidget 的显示方式: 黑点是我希望最小化按钮出现的位置。我遇到的一种方法是,我可以使用 QToolButton *qToolButt
我在 QTabWidget 上完成了以下样式(其中一个标签内有一个 QTabWidget): QTabBar::tab { border: 2px solid grey; } QTabBar:
TabWidget中的分隔线工作正常,但是当Tab窗口的背景设置为时 tabHost.getTabWidget().getChildTabViewAt(tabId).setBackgroundReso
我有一个带有六个选项卡的 QTabWidget,所有选项卡都有一个图标 -但图标不在选项卡的中央: 到目前为止我做了什么: tabWidget->setStyleSheet("QTabBar::tab
我目前正在使用样式表来为应用程序设置主题。这是我用于 QTabWidget 的样式表: /*QTabBar et QTabWidget*/ QTabBar::tab { background:
我有一个 QTabWidget包含 4 个选项卡。我想单独设置它们的每个标题的样式:我看到我可以使用样式表来做到这一点。但我的问题是,我不能只更改一个选项卡的标题(选项卡名称所在的位置),而不更改选项
我准备了一个小脚本来说明我的问题。事实上,我希望选项卡 1 (Tab 1) 中包含的按钮显示选项卡 4 (Tab 4)。 QTabWidget 包含在主类 (CLASSE_Main) 中,我从类 1
编辑:措辞并包括一个最低限度的可重复示例 我有一个关于对象名称如何在 PyQt5 中工作/OOP 如何在 PyQt5 中工作的问题: 背景 我正在开发一个包含 QTabWidget 的项目。每次单击“
我正在使用 Qt,并且在 Qt 设计器编辑器中有一个 QTabWidget 设置,您可以在图 1 中看到它。 正如您在 Tab4 之后看到的那样,一直到右边缘有一个空白空间,以某种方式我需要用一种颜色
我设置了ui->tabWidget->setTabsClosable(true);,但是QTabwidget在每个选项卡上仅显示一个十字,单击此按钮时不会关闭选项卡。要关闭标签页,我还需要做什么?我试
我正在使用带有三个选项卡的QTabWidget。 其中一个选项卡是关于信息/帮助的。所以我想使用问号图片 (.png) 而不是文本“帮助”。 这可能吗?我正在使用 Python/PyQt,但只能找到
我的应用程序上有一个 QTabWidget,因此用户可以通过单击标题来浏览标签页,我想知道用户何时打开标签页,他/她之前是否访问过该页面。在 QWizard 类中有一个方法 hasVisitedPag
我在使用 QTabWidget 时遇到了一些问题。如果缺少隐藏功能,我必须自己构建。根据我使用 removeTab 和 insertTab 的文档,但是使用 insert Tab 时,我无法显示已删除
我正在使用最新的 Qt 4.5 并使用 Qt Creator 创建我的 GUI。我的选项卡小部件在 Creator 中看起来不错,显示了所有图标。然而,当我编译并运行它时,没有图标,但选项卡比它们更宽
我想改变 tabwidget 背景的颜色。 我怎样才能改变蓝线的颜色?? 我的代码是: public class MainActivityNew extends ActionBarActivity i
我在创建 UI 时遇到了一些困难。 我需要什么: 1 个 QTabWidget 和 3 个 QWidget 作为标签。其中一个 Widget 包含 QPushButtons、QLineEdits,并且
我正在学习 Qt 和一般的 C++,我被这个问题困住了。希望回答起来很简单。 我有一个由这段代码创建的QTextEdit: void MainWindow::on_actionNewtab_trigg
我正在尝试创建一个具有多个选项卡的 QTabWidget 的图形用户界面。作为初步测试,我创建了一个具有两个使用相同布局的选项卡的测试。第一个选项卡(第 1 页)是空白的,但第二个选项卡显示了我创建的
我正在使用 QTabWidget(由 AbstractManagerTab 组成的 pHTab)来显示一些数据(IpTrafficPage 和 SpecTrafficPage 小部件),我需要将 QP
我是一名优秀的程序员,十分优秀!