项目场景:
在打包pyqt5 文件为exe 文件的过程中,如果没有报图片也资源打包进去的话,可能出现图片资源在外面可见的部分,
在这个过程学习到一些方法,记录分享
问题描述
图片资源不希望是可以见的情况,需要把图片资源也打包到配置里面,但是main_ui.spec spec 文件里面没有看到有配置进去的功能,
1.需要先把图片资源转换为二进制的文件之后再使用就可以了,首先在图片资源下面新建,rcc 文件,把图片的名字包括扩展名。
如下面的格式
myimage.rcc
<RCC>
<qresource>
<file>add.png</file>
<file>baocun.png</file>
<file>bianji.png</file>
<file>car_icon.png</file>
<file>gongyezidonghua.png</file>
<file>icon_ruanjiansuoche-copy.png</file>
<file>jian.png</file>
<file>save-fill.png</file>
<file>tihuan.png</file>
<file>yunxingzhong.png</file>
</qresource>
</RCC>
2、使用pyccr 打包为二进制的py文件
pyrcc5 F:\my_work\my_py_qt5\sb_lock\my_assets\myimage.rcc -o F:\my_work\my_py_qt5\sb_lock\my_assets\resource_rc.py
这样就可以在自己的目录下面可以生成一个1.py的文件,自己命名你自己需要的名字
3、在项目的起始py文件里面import 刚刚生成的那个py 文件
import resource_rc
4、这样就可以在全局去使用。使用方式如下:
import resource_rc
self.setWindowIcon(QIcon(':/gongyezidonghua.png'))
原因分析:
大部分功能qt 都会有包含的,如果没有找到好的解决方法,可以百度查找下。
解决方案:
OK。解决问题。这样打包之后可以不需要把图片资源放置进去了。问题搞定,谢谢,点赞,关注!!!!!!