我正在尝试使用 Qt 样式表对标准小部件进行一些重设计。因此,在通过#objectName
选择器为不同的小部件手动完成大部分操作后,我决定以某种方式对类似的小部件进行分组。
例如,我有多个QFrames
内部表单中的标题。我希望他们都拥有相同的样式表。一种方法是使用命名约定(这是我的后备变体),即QFrame[objectName|="prefix_"]
. 但我想按类对我的小部件进行分组。所以我创建了简单的占位符类:
class HeaderFrame: public QFrame
{
public:
HeaderFrame(QWidget *parent = NULL): QFrame(parent) {}
};
这使我能够将所有这些推广QFrames
到HeaderFrames
. 之后我尝试设置
HeaderFrame { background-color: red; }
样式表到 MainWindow 对象本身(使其作用于所有 HeaderFrames),但它不起作用。QtCreator 表单设计器中没有任何变化,编译应用程序后也没有任何变化。我尝试了这个样式表的不同变体,但没有任何效果。
那么,是否只有 Qt 小部件(如 QLabel、QFrame 等)可用于这种样式?或者有一些方法可以为您的推广小部件编写样式表?