一、概述
在Qt Designer中要使用图片资源有三种方法:通过图像文件指定、通过资源文件指定、通过theme主题方式指定,对应的设置界面在需要指定图像的属性栏如QLabel 的pixmap 属性通过点击属性设置栏的倒三角按钮触发,如下图:
![](https://img-blog.csdnimg.cn/20210816193008305.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)
二、通过资源文件指定对应资源作为部件的资源
Qt Designer还支持将所有图像资源属性保存到资源文件中,再在部件属性设置时从资源文件中选择资源。
2.1 新建资源文件
![](https://img-blog.csdnimg.cn/20210816193205839.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)
点击上图中的铅笔型Edit Resources按钮,进入资源编辑界面,如下图:
![](https://img-blog.csdnimg.cn/20210816193234246.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)
点击蓝色标记按钮新建一个资源文件如“resource.qrc”,命名保存到开发者指定的目录(注意:与*ui文件存放同一级目录),保存后如图:
![](https://img-blog.csdnimg.cn/20210816193425688.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)
点击上图蓝色标记的Add Prefix按钮,新建对应的资源前缀或路径,这可以认为是应用需要用到的一个资源目录,具体名字根据自己规划的资源来命名,如要建一个图像资源目录img,可以如下图这种命名:
![](https://img-blog.csdnimg.cn/20210816193516873.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)
点击上图蓝色标记的Add Files按钮,将不同的图形或按钮文件添加到对应的目录下,如图:
2.2 从资源文件引用资源设置部件的资源属性
在部件属性设置的界面,点击Choose Resource从资源文件选取资源,如图:
![](https://img-blog.csdnimg.cn/20210816193653920.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)
2.3 使用PyRcc将资源文件转成py文件
2.3.1 添加PyRcc 额外工具
![](https://img-blog.csdnimg.cn/20210816193819263.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)
详细配置如下:
Description(描述): convert resouces to .py
Program(程序): C:\python3\Scripts\pyrcc5.exe(对应pyrcc.exe的路径)
Arguments(参数): $FileName$ -o $FileNameWithoutExtension$.py
Working directory(工作目录): $FileDir$ (直接复制粘贴,或点击按钮“Insert macro…” 选择对用文件)
2.3.2 PyRcc将资源文件转成py文件
![](https://img-blog.csdnimg.cn/20210816194056783.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)
资源文件保存到了工程中,然后选中资源文件,鼠标右键调出配Rcc进行资源转py文件处理。如图:
![](https://img-blog.csdnimg.cn/20210816194154476.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)
转换成功后工程文件多了如下图红色标记的py文件。
![](https://img-blog.csdnimg.cn/20210816194231647.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3pob3V6aGl3ZW5nYW5n,size_16,color_FFFFFF,t_70)