使用vs开发qt程序有时候不希望程序使用到的图片资源让用户看到,这时可以讲资源打包到程序中。
- 创建qrc资源文件,里面写入你使用到的图片资源路径,下面的代码中img是文件夹
<RCC>
<qresource prefix="/" >
<file>img/ball.png</file>
<file>img/chinapool.jpg</file>
<file>img/Globe.ico</file>
<file>img/ninegoals.jpg</file>
<file>img/snooker.jpg</file>
</qresource>
</RCC>
- 使用rcc工具将资源转换为二进制,存储在.h文件中,然后使用copy命令拷贝到源代码目录下,下面代码生成的是cuesports.h文件
rcc -o cuesports.h cuesports.qrc
copy cuesports.h ....sourcecuesports.hpause
-
接着将生成的cuesports.h加入工程然后在主程序main.cpp中包含改头文件
#include "cuesports.h"
- 最后使用资源只需要在前面加上":/" + 资源路径 就行了
painter.drawPixmap(0, 0, QPixmap(":/img/snooker.jpg"));