Qt-setIcon无法加载图片为图标

当使用 添加Qt资源 来添加一个图片为图标时,按照以下流程:

1、右键点击.pro工程,选择在"Explorer中显示", 将包含图片的文件夹放在该路径下;

2、右键单击工程项目,点击Add new

3、依次选择Qt→Qt Resource File→名称:res(自己起个名字)→下一步→完成,就会生成一个名为res.qrc的文件。

4、res.qrc右键点击"Open in Editor", →添加前缀(可以简单写一个/)→添加文件(将图片文件夹下的所有图片选中)

5、编译一下,发现res.qrc里面已经有/图片文件夹的子项了。

这时候在程序中输入code:

复制代码
    //使用“添加Qt资源”,“:+前缀名+文件名”   
 ui->action_2->setIcon(QIcon(":/icon/rocket.png"));   
 ui->action_3->setIcon(QIcon(":/icon/qt.png"));

可是,发现图片并没有加载成功。很多人说是绝对相对路径的问题,在这里应该如此做:

1)在res.qrc下面展开图片,找到要加载的图片,右键点击 copy path :/icon/qt.png, 确定code中的路径与之一样;

2)执行qmake,编译,运行。

这时就会发现图标已经可以正确显示了。正所谓:"有事没事,qmake一下",可以解决很多问题。

相关推荐
认真的酒窝5 小时前
自己动手开发编译器(十一)语义分析
java·开发语言
wbs_scy7 小时前
Linux C++ 高并发编程:线程池全链路深度解析,从原理到手撕实现
java·开发语言
JAVA面经实录9177 小时前
Linux 常用命令完整知识体系
java·linux·开发语言·汇编
贪玩的蛋挞7 小时前
C#与闭包
开发语言·c#
端庄的战斗机8 小时前
javascript 设计模式(文章很长,请自备瓜子,水果和眼药水)
开发语言·javascript·设计模式
Full Stack Developme8 小时前
Java LRU 与 LFU 算法及应用
java·开发语言·算法
C语言小火车10 小时前
C++ 堆排序深度精讲:基于完全二叉树的选择排序进化,最坏情况 O(n log n) 的稳定王者
开发语言·c++·算法·排序算法·堆排序
北冥you鱼10 小时前
abigen 最佳实践:从入门到精通,高效生成 Go 语言合约绑定
开发语言·golang·区块链
ALex_zry11 小时前
C++26 std::complex 结构化绑定详解:auto [re, im] = c
c语言·开发语言·c++
她说..12 小时前
Java 默认值设置方式
java·开发语言·后端·springboot