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一下",可以解决很多问题。

相关推荐
-Marks-13 分钟前
【C++编程】STL容器(二)--- vector底层模拟实现(常用接口实现 | 扩容机制 | 深浅拷贝 | 迭代器失效)
开发语言·c++·vector·内存管理·迭代器失效·vector底层模拟实现
Shadow(⊙o⊙)31 分钟前
C++11并发支持库
开发语言·c++
一技安身32 分钟前
【java】JDK8 + JDK17 绿色解压共存方案-全程不修改任何系统环境变量
java·开发语言
hudd6681 小时前
JavaEE 初阶 - 多线程(初阶)
java·开发语言·java-ee
I Am a robert girl1 小时前
稀有事件估计的迭代去对齐:从源码视角拆解重要性采样新范式
开发语言·python·机器学习·重要性采样·蒙特卡洛方法·稀有事件估计
golang学习记2 小时前
rust开发,选VS Code还是RustRover?
开发语言·后端·rust
打工仔折腾 AI2 小时前
从零写一个CAD 05:以鼠标为中心的滚轮缩放,招法能复用但顺序不能反
开发语言·后端·python·性能优化·计算机外设·swift·ai agent 实战
CarIise2 小时前
Java实训阶段查漏补缺复习笔记1
java·开发语言·笔记
事圆则缓2 小时前
Kotlin 泛型方差实战:out、in、星投影与类型擦除
android·开发语言·kotlin
Code_Solitude3 小时前
c语言:二分法的完整补充
c语言·开发语言·算法