Qt项目的多种样式(QLabel,QPushbutton,...)

Ali*_*zaK 3 css qt qt-designer qlabel

  • 我正在使用Qt Creator 3.6.1设计UI
  • 我正在使用Qt设计师表格.
  • 我有一个包含20个QLabel的QWidget.
  • 我希望其中10个QLabel具有红色背景颜色
    ,而另外10个具有蓝色背景颜色.
  • 我想为此目的使用css.

我发现你可以在父窗口小部件css中设置所有QLabel样式,这样可以设置所有标签的样式.

QLabel
{
    background-color: red
}
Run Code Online (Sandbox Code Playgroud)

但在我的情况下,我想要两类风格.有没有办法通过不对每个剩余的10个蓝色标签单独设置样式?

我知道我可以按名称设计元素,但这是一项巨大的努力.

SRD*_*SRD 5

如果要使用CSS类,则必须为QLabel设置类名:

QLabel* redLabel = new QLabel("red label");
QLabel* blueLabel = new QLabel("blue label");

redLabel->setProperty("class","my-1st-class");
blueLabel->setProperty("class","my-2nd-class");
Run Code Online (Sandbox Code Playgroud)

然后在CSS文件中使用您的类名:

.my-1st-class{
     background-color: red;
}

.my-2nd-class{
     background-color: blue;
}
Run Code Online (Sandbox Code Playgroud)