背景:我有一个Qt应用程序,由多个对话框和窗口组成。
我有一个由多个对话框和窗口组成的Qt应用程序。我想把所有的样式压缩成一个样式表,并将其加载到我的应用程序中。main.cpp
的目的是将其应用于我的整个应用程序(我认为应该这样做)。从这一点上看,应用程序不应该改变风格。
我想这样做,因为如果一个人做了这样的事情,风格可能会混淆,等等。这个 或类似于QtCreator设计器中每个widget的东西。
问题:我将用我的应用程序中的一个例子来解释我所面临的具体问题。
我将用我的应用程序中的一个例子来解释我面临的一个具体问题。
我有几个简单对话框的变化,QLabel标题,QLabel消息(有时是QLabel提示),以及一个单一的 "ok "QPushButton或2个QPushButtons "positive"& "negative"。
在我的主题中,我想为特定的按钮、标签等设置样式,我从 此处.
示例CSS。
QPushButton {
font-size: 10pt
color: #111
}
QPushButton[objectName="btnPostive"][objectName="btnProceed"] {
font-size: 1pt
color: #ccc
}
QLabel {
font-size: 9pt
color: #111
}
QLabel[objectName="lblTitle"] {
font-size: 9pt
color: #111
}
请注意 [objectName="btnPostive"][objectName="btnProceed"]
是为了将该样式应用到带有 objectName
's btnPostive
和 btnProceed
然而,它没有。
我打算做的事情被认为是最好的实践,和一个子问题(也是首选的例子)应用相同的风格到一组选定的小部件,应该如何最好的。
如果你想根据对象名称来控制应用的样式表,你可以使用 ID选择器 QPushButton#objectName
详见全文 文件. 你可以用同一个样式表将多个对象用一个 ,
然后你的样式表应该是这样的。 请注意,你还需要一个 ;
在每一行的末尾。
QPushButton {
font-size: 10pt;
color: #111;
}
QPushButton#btnPositive, QPushButton#btnProceed {
font-size: 1pt;
color: #ccc;
}
QLabel {
font-size: 9pt;
color: #111;
}
QLabel#lblTitle {
font-size: 9pt;
color: #00f;
}