Qt资源系统是一个跨平台的资源机制,资源文件的后缀是qrc,它将程序运行时所需要的资源以二进制的形式存储于可执行文件中。如果你的程序需要加载特定的资源(图片、动画等),就可以将它们存放在资源文件中,防止丢失。
添加资源文件
在工程目录中新建文件夹,将程序运行时所需要的文件放入文件夹中;
在现有的工程上添加新文件;
选择Qt->Qt Resource File->Choose..
填入名称,点击下一步;
点击完成;
此时在项目文件目录树中自动生成Resources文件夹,文件夹下的image.qrc即为资源文件,在image.qrc文件中右侧的编辑区下方添加前缀;
在现有前缀上继续添加文件,将之前新建文件夹下的文件添加进来。
资源文件使用
在程序中用到文件路径时,可将qrc文件打开,复制文件路径。qrc文件打开方式为:鼠标右击qrc文件,选择“Open in Editor”;
可在文件上右击鼠标,选择“复制资源路径到剪贴板”。
此时复制来的资源路径就可以在程序中粘贴使用啦~
QPixmap pixmap;//定义QPixmap对象
pixmap.load(":/new/prefix1/image/picture.png");//加载图片
QLabel *my_label= new QLabel(this);
my_label->setPixmap(pixmap); //图片设置到QLabel中
如果想更改文件名,我们可以添加别名;
同样,还是可以复制资源路径到剪贴板,粘贴到程序中使用。
QPixmap pixmap;//定义QPixmap对象
pixmap.load(":/new/prefix1/my_pic");//加载图片
QLabel *my_label= new QLabel(this);
my_label->setPixmap(pixmap); //图片设置到QLabel中
那么在ui设计器中同样可以使用资源文件,以QLabel为例,在属性中->QLabel类->pixmap->选择资源;
选择想要显示的图片,如果未刷新出资源文件,可以点击重新加载按钮。点击OK,QLabel就可以显示图片了。
参考文献:手把手教QT—添加资源文件