我写了一段PyQt5程序, 程序中需要显示图片. 我在PyCharm中开发时,可以正常的显示图片, 但是使用PyInstaller将程序打包为exe之后, 同时将图片资源放入exe所在的目录中(即图片路径正确), 打开的exe程序却不显示图片.
对此, 我找到了一种解决办法, 即,将图片写入py文件中去, 通过使用这个py文件来显示图片. 具体我是如下这么做的.
我创建一个pic.qrc文件, 在文件中写入内容如下:
<RCC> <qresource prefix="/"> <file>image/png_closeImage1.png</file> <file>image/png_closeImage2.png</file> <file>image/png_trayImage.png</file> </qresource> </RCC>
然后使用如下命令将pic.qrc文件编译为pic.py文件:pyrcc5 pic.qrc -o pic.py
接下来就可以在py程序中通过pic.py引用图片了:
我的托盘文件为Tray.py, 该文件需要设置托盘的图标, 我首先import pic, 即导入pic.py; 然后在通过self.setTrayIcon(":image/png_trayImage.png"), 从而添加图片成功.
注意: 我一开始是使用的jpg图片, 但一直没有成功, 后来我将jpg图片换成png图片, 就成功了!