2017-05-04 51 views
0

我正在学习使用Qt样式表为我的应用程序添加不同的样式。我在网上查看,看到Qt文档说,你可以使用一些叫做​​的东西,它可以将主题应用到某些对象。这是我如何实现此功能:Qt样式表:无法使用ID选择器

QPushButton#button 
{ 
    color:red; 
} 

但它不起作用。它只适用于当我尝试没有​​:

QPushButton 
{ 
    color:red; 
} 

为什么不工作?我用复制和粘贴,所以我100%肯定我没有错误的名称。

+0

你是否['yourButton-> setObjectName(yourID);'](http://doc.qt.io/qt-5/qobject.html#objectName-prop)目标QPushButton? –

回答

0

哪个版本? 请告诉我,并发送整个代码。 因为4.7 4.8 5.2 5.3 5.5 5.8有很多不同的细节。

我是使用可以尝试

QStyleOption opt; 
opt.initFrom(this); 
QPainter p(this); 
style()->drawPrimitive(QStyle::PE_Widget, &opt, &p, this); 
0

我找到了答案,它实际上是非常简单的。我忘了添加button->setObjectName("Name");,导致样式表不知道该按钮。只需添加这行代码,它应该正常工作。