我正在一个项目中,该项目在一个组中有40个可检查的按钮,并且我希望一个按钮的图标根据我定义的值进行更改。我不会创建新的按钮,而只是更改当前按钮的图标。因此,我通过尝试更改一个按钮的图标进行测试。
这是我当前的代码:
QPixmap b1d0(":/textures/blocks/textures/blocks/stone.png");
QIcon ButtonIcon(b1d0);
ui->slot_0->setIcon(ButtonIcon);
ui->slot_0->setIconSize(b1d0.rect().size());
资源路径是直接从我的资源文件中复制的,所以它是正确的,我像疯了似的把它弄乱了,但是没有变化,所以...
slot_0是我的按钮。
我做错了什么?或更妙的是,我什至可以更改现有按钮的图标吗?
谢谢你的时间 :)
最佳答案
如果您在Windows上使用MSVC作为编译器,并且想要使用Qt的资源系统,则需要添加
Q_INIT_RESOURCE(res)
到
main()
的开头,其中res是您的.qrc文件的名称,不含“ .qrc”。要全面了解这一点,请查看以下要点:
https://gist.github.com/alexreinking/5992821
关于c++ - (Qt C++)QPushButton setIcon()不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17635467/