六、资源文件#

Qt中有时需要显示一些图片

Qt资源系统可以将运行时所需的资源以二进制的形式存储于可执行文件内部

1. 资源文件导入#

1、把图片资源拷贝到工程目录下

2、创建resources.qrc文件,内容如下

1
2
3
4
5
6
<RCC>
    <qresource prefix="/">
        <file>image/i.jpg</file>
        <file>image/mario.gif</file>
    </qresource>
</RCC>

file中需要列举出资源

3、将resources.qrc添加到CMakeLists.txt编译源文件中

1
2
3
4
5
6
# 通过源文件和resources.qrc生成可执行程序
add_executable(resource main.cpp MainWindow.cpp resources.qrc)
target_link_libraries(
        resource
        ${QT_LIBRARIES}
)

2. 使用资源文件#

在窗口MainWindow.cpp中显示图片

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
#include "MainWindow.h"

MainWindow::MainWindow(QWidget* parent):QWidget(parent) {
    setFixedSize(600,600);
    /*--------------------------- 图片 ---------------------------*/
    QLabel*label  = new QLabel(this);
    QPixmap *map = new QPixmap(":/image/i.jpg");
    label->setPixmap(*map);
    /*--------------------------- 播放动画 ---------------------------*/
//    QLabel*label  = new QLabel(this);
//    QMovie *movie = new QMovie(":/image/mario.gif");
//    label->setMovie(movie);
//    //开始播放
//    movie->start();
}

MainWindow::~MainWindow() {

}

注意:

图片的路径需要根据resources.qrcprefixfile确定