在编写程序的时候经常用到图片来美化应用程序的 UI 界面,除了图片外,还有视频、音频等等其他类型的资源文件。所谓资源文件,即程序可以从中读出需要的各种预先添加好的文件。
Qt 提供了一套管理资源文件的方法,本文介绍如何使用 Qt Creator 管理和使用资源文件
在已有工程上右键,选择「添加新文件…」,在 Qt 分类下找到 Qt Resource File
输入 Qt 资源管理文件的名称(例如 res.qrc),完成创建。Qt Creator 会默认将 res.qrc 存放在项目根目录下,并在工程文件 demo.pro 中添加该资源管理文件
在资源管理文件 res.qrc 上右键,选择「Open in Editor」,先点击「添加前缀」,再「添加文件」
前缀,用于对资源文件分类管理
按照图形化界面提示,通过鼠标点选即可
右键选择「Copy Path “:xxx/xxx/xxx.jpg”」
若 Qt 项目中添加了一个资源文件 icon.qrc(名称自定义),添加资源文件时,资源文件不在项目根目录下,则通过右键复制资源路径使用,是不能成功的,此时可以通过编译后的文件查看正确路径。
编译输出目录下会存在一个 qrc_icon.cpp 文件。文件中有如下:
static const unsigned char qt_resource_struct[] = {
// :
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x4,0x0,0x0,0x0,0x1,
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,
// :/update.svg
0x0,0x0,0x0,0x18,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x4,0xbe,
0x0,0x0,0x1,0x89,0x91,0xae,0x8,0xb9,
// :/reset.svg
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,
0x0,0x0,0x1,0x89,0x91,0xae,0x8,0xb8,
// :/icon.ico
0x0,0x0,0x0,0x32,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0xa,0x10,
0x0,0x0,0x1,0x89,0xcf,0xc,0xd4,0x9e,
// :/send.svg
0x0,0x0,0x0,0x48,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x1e,0x24,
0x0,0x0,0x1,0x89,0x91,0xae,0x8,0xb8,
};
若使用图片资源路径不正确,可从这里查看
>> 注意:建议在项目根目录下,新建一个用来专门管理资源文件的文件夹,这样添加到资源管理文件(.qrc)中,通过右键复制资源路径才能正常使用