前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PyQt5 资源文件*

PyQt5 资源文件*

作者头像
用户6021899
发布2019-08-14 15:27:41
8010
发布2019-08-14 15:27:41
举报

(更正了结尾处资源路径的写法)

为了解决图标文件(以及帮助文件和其它一些较小的文件)与应用程序目录不匹配 或者 易丢失 的问题,在PyQt中,可以将多个图标文件打包成资源文件,再编译成一个.py 文件以供应用程序调用。步骤如下:

首先,要创建一个含有拟使用图标文件细节的 .qrc 文件:

假定文件的名字为 my_resource.qrc,文件的内容如下:

<RCC>

<qresource prefix="icon">

<file alias="copy">editcopy.png</file>

<file alias="cut">editcut.png</file>

<file alias="justify">textjustify.png</file>

<file>editpaste.png</file> <file alias="new">filenew.png</file>

</qresource>

<qresource prefix="html"> <file alias="1">sdf.html</file>

<file alias="2">sdf2.html</file> </qresource>

</RCC>

.qrc 文件是一种简单的XML格式的文件,可通过手写完成(也可以自编小程序代替手写),还可以Qt 设计师 的 资源浏览器创建(从pip安装 pyqt5-tools 即可完成Qt Designer程序的安装,使用Qt Designer可以通过拖动部件的方式很方便创建应用程序的用户界面,后续会有介绍):

通过对话框,可选择要加载的文件(可多选),可以给已选的文件加别名。最后点OK 即可生成相应的 .qrc 文件。

然后通过命令行,用 pyrcc5 -o命令就可以将 .qrc 文件编译为 .py 文件。

可参考以下批处理命令:

e: cd "E:\Python36\MyPythonFiles\MyPyQt5\主窗口程序 - 副本" pyrcc5 -o my_resource.py my_resource.qrc

最后,在程序头部导入该py文件即可:

import my_resource

之后就可以在程序中这样创建图标:

QIcon(":icon/editpaste.png")#创建资源文件时若设有分组前缀

如果设置了别名,则不可以使用文件名,必须使用别名(若有前缀还是要带上前缀):

QIcon(":icon/cut")

如果没有前缀也无别名,则下面两种写法都是可以的:

QIcon(":exportpdf.png")

QIcon(":/exportpdf.png")

开头的 ":" , 是告诉PyQt,这是一个资源。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-02-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python可视化编程机器学习OpenCV 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云开发 CloudBase
云开发(Tencent CloudBase,TCB)是腾讯云提供的云原生一体化开发环境和工具平台,为200万+企业和开发者提供高可用、自动弹性扩缩的后端云服务,可用于云端一体化开发多种端应用(小程序、公众号、Web 应用等),避免了应用开发过程中繁琐的服务器搭建及运维,开发者可以专注于业务逻辑的实现,开发门槛更低,效率更高。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档