将资源打包到程序中

使用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.h

    pause

  • 接着将生成的cuesports.h加入工程然后在主程序main.cpp中包含改头文件

    #include "cuesports.h"

  • 最后使用资源只需要在前面加上":/" + 资源路径 就行了

    painter.drawPixmap(0, 0, QPixmap(":/img/snooker.jpg"));

原文地址:https://www.cnblogs.com/jck34/p/4037935.html