1

我正在学习使用 Qt 样式表向我的应用程序添加不同的样式。我在网上查看并看到 Qt 文档,它说您可以使用ID Selector可以将主题应用于某些对象的东西。这就是我实现此功能的方式:

QPushButton#button
{
    color:red;
}

但它不起作用。它仅在我尝试不使用时才有效ID Selector

QPushButton
{
    color:red;
}

为什么这不起作用?我使用了复制和粘贴,所以我 100% 确定我没有记错名称。

4

2 回答 2

2

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

于 2017-05-04T13:14:52.093 回答
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);
于 2017-05-04T02:56:37.373 回答