Pyqt:如何更改QGroupBox标题颜色?

时间:2016-04-15 16:09:35

标签: python colors pyqt qgroupbox

我有一个QGroupBox,objectName是“of_esq”。如何更改标题的颜色?

是这样的:self.of_esq.setStyleSheet("of_esq.title {color: green}")

2 个答案:

答案 0 :(得分:1)

如果您直接在of_esq窗口小部件上设置样式表,则可以这样做(假设它没有子QGroupBoxes

self.of_esq.setStyleSheet('QGroupBox  {color: green;}')

您还可以在of_esq的父级设置样式表,并使用css id选择器(#)按名称引用小部件

self.setStyleSheet('#of_esq {color: green;}')

答案 1 :(得分:0)

迟到了聚会,但这是我的做法:

首先,我在Qt Designer中创建了UI,其中包含QGroupBox。我花了太多时间试图在Qt Designer中查找颜色属性,该属性会影响QGroupBox标题。最后,我求助于修改转换后的ui代码(注意“警告!此文件中所做的所有更改都将丢失!” )。

接下来,我在groupBox小部件上放置了设置样式表的代码:

self.groupBox.setStyleSheet("")

接下来,我修改了此代码,“向下钻取”标题以设置颜色:

self.groupBox.setStyleSheet('QGroupBox:title {color: rgb(1, 130, 153);}')

使用Brendan Abel的第一个示例,这似乎也适用于其他小部件。只要确保您明确指定了确切的小部件即可。

要验证,我在布局中(在QGroupBox中)添加了三个单选按钮。保存后,我重新生成了Python ui代码。然后,我只修改了一个单选按钮:

self.radioButton_2.setStyleSheet('QRadioButton {color: rgb(1, 130, 153);}')

这仅更改了radioButton_2小部件的文本颜色。

在Qt Designer中提供小部件颜色属性会更加方便,但这似乎是可行的解决方法。请注意,在Qt Designer中进行更改后重新生成ui代码将覆盖您修改后的代码。