Qt designer-打包资源文件(引用图片资源)

使用pyqt5引用外部资源文件主要有两种方式,一是将资源文件转换成py文件,二是在程序中通过相对路径引用外部图片资源
下面仅介绍第一种方法

1.创建资源文件

创建一个txt文件,键入如下,再将后缀改成qrc

<rcc version="1.0">
     <qresource>
     </qresource>
</rcc>

随后创建一个新窗体,打开资源管理器进行编辑
在这里插入图片描述
进入资源编辑页面,选中要编辑的资源,并添加资源路径
在这里插入图片描述
点击OK
然后我们发现原来的资源文件变成了下面这样

<RCC>
  <qresource prefix="pic">
    <file>PyQt5-master/Chapter03/images/cartoon1.ico</file>
    <file>PyQt5-master/Chapter03/images/cartoon2.ico</file>
    <file>PyQt5-master/Chapter03/images/cartoon3.ico</file>
    <file>PyQt5-master/Chapter03/images/cartoon4.ico</file>
    <file>PyQt5-master/Chapter03/images/python.jpg</file>
  </qresource>
</RCC>

2.在窗口中使用资源文件

操作窗口文件唉,在窗口中央添加一个label控件,选中,更改其pixmap属性,单击后面按钮,将值改成前面引入的资源

在这里插入图片描述

3.转换资源文件

将资源文件转为py文件(需要注意的是,这里使用的是pyrcc5进行转化,同时为了与窗口文件保持一致,须在转化后的资源文件名字后加_rc

4.编辑逻辑文件

import sys
import apprcc_rc
from PyQt5.QtWidgets import QApplication,QMainWindow
from Mainpic import Ui_Form
class MyMainpic(QMainWindow,Ui_Form):
    def __init__(self,parent=None):
        super(MyMainpic,self).__init__(parent)
        self.setupUi(self)

if __name__=="__main__":
    app=QApplication(sys.argv)
    win=MyMainpic()
    win.show()
    sys.exit(app.exec_())

完成
在这里插入图片描述
补充 :
需要注意的是Qt中图片引入路径,与实际略有不同

self.label.setPixmap(QtGui.QPixmap(":/pic/PyQt5-master/Chapter03/images/cartoon1.ico"))

这是由于我们在编辑资源文件时,加了个“pic”标签,所以Qt会自动把它加到路径之中

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Qt中,可以使用资源文件(Resource file)将程序所需的静态资源(如图像、字体、样式表等)打包在一起,方便程序的管理与使用。以下是在Linux系统下打包资源文件的步骤: 首先,确保Qt Creator已经成功安装,并且正确配置了Qt开发环境。 1. 在Qt Creator中创建一个新的Qt项目或打开一个已有的项目。 2. 在项目目录中创建一个新的资源文件。右键点击项目文件夹,选择"添加新文件",在弹出的对话框中选择"Qt" -> "Qt Resource File"。 3. 在资源文件编辑器中,点击"添加"按钮,选择要打包资源文件(如图像文件、字体文件等)。 4. 为每个资源文件指定一个在程序中使用的别名(可以是任意的字符串),并且指定资源文件的路径。 5. 在项目文件的.pro文件中,添加以下代码来告诉Qt编译器要使用资源文件: ``` RESOURCES += resource_file.qrc ``` 其中,`resource_file.qrc`是资源文件的名称,根据实际情况进行修改。 6. 在项目根目录下的终端或命令行中,使用`qmake`命令重新生成项目的Makefile文件。 7. 使用`make`命令编译项目,并生成可执行文件。 8. 在代码中,可以使用资源文件中的资源。例如,可以使用`QPixmap`加载资源文件中的图像: ``` QPixmap pixmap(":/images/image.png"); ``` 其中,`:/images/image.png`是资源文件中图像资源的路径,根据实际情况进行修改。 通过以上步骤,资源文件将成功打包到可执行文件中,程序运行时将可以正确加载并使用这些资源。注意,在每次修改了资源文件后,需要重新进行编译,才能生效。 希望这些步骤对您有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值