如何通过 class select QWidget
How to select QWidget by class
想象一下,我想在 MainWindow 中为一些 QWidgets 设置一个 css 样式,例如:
QPushButton {
background: rgb(79, 79, 79);
}
但它对所有 QPushButtons 应用 css 风格,我想只为一些 class 识别的一些 QPushButtons 设置背景。怎么做?
编辑:
<widget class="QPushButton" name="pushButton_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>60</height>
</size>
</property>
<property name="text">
<string>Label</string>
</property>
</widget>
您需要使用 class 选择器
QPushButton.someClass{
background: rgb(79, 79, 79);
}
html 将是例如
<QPushButton class='someClass'>
Label
</QPushButton>
在您的示例中 class 是 QPushButton
,因此您的选择器是正确的。您可以在选择器中使用对象名称
QPushButton#pushButton_2 { ... }
或者如果您需要设置几个按钮的样式,您可以使用 属性 选择器
QPushButton[fancy=true] { ... }
您可以使用 QtDesigner 添加 fancy
属性 或使用 QObject::setProperty()
.
从代码中添加
有关详细信息,请查看文档 here
想象一下,我想在 MainWindow 中为一些 QWidgets 设置一个 css 样式,例如:
QPushButton {
background: rgb(79, 79, 79);
}
但它对所有 QPushButtons 应用 css 风格,我想只为一些 class 识别的一些 QPushButtons 设置背景。怎么做?
编辑:
<widget class="QPushButton" name="pushButton_2">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>60</height>
</size>
</property>
<property name="text">
<string>Label</string>
</property>
</widget>
您需要使用 class 选择器
QPushButton.someClass{
background: rgb(79, 79, 79);
}
html 将是例如
<QPushButton class='someClass'>
Label
</QPushButton>
在您的示例中 class 是 QPushButton
,因此您的选择器是正确的。您可以在选择器中使用对象名称
QPushButton#pushButton_2 { ... }
或者如果您需要设置几个按钮的样式,您可以使用 属性 选择器
QPushButton[fancy=true] { ... }
您可以使用 QtDesigner 添加 fancy
属性 或使用 QObject::setProperty()
.
有关详细信息,请查看文档 here