pyqt无法显示背景图片
Qt Designer生成的.ui文件转化成.py文件后背景图片消失
使用Qt Designer生成ui文件后,用pyuic工具将其转化成.py文件,但是运行程序时首先会出现一个模块加载错误。ModuleNotFoundError: No module named ‘background_re’
ModuleNotFoundError: No module named 'background_re'
然后删除这一段后,重新运行后,发现背景图片都无法显示,其余功能正常。
原因
使用Qt Designer时,加入背景图片时,stylesheet需要读取.qrc文件。而未经转化成.py的.qrc文件无法识别。因此解决办法为将.qrc文件转化为.py文件。
.qrc文件转化为.py文件
pycharm中,
File——Settings——Tools——External Tools
新建一个外部工具
如图所示:
其中,
Name,Descirption :自己写
pyrcc5.exe所在的位置在你安装anaconda的目录或者环境的目录下面。
Arguments按以下粘贴即可
-o $FileNameWithoutExtension$.py $FileNameWithoutExtension$.qrc
working directory:
$FileDir$
OK
记得将你的.qrc文件利用上述工具转化一下
(右击你的.qrc文件,选择External Tools——pyqrc,就可以了,每次修改了stylesheet后记得都要重新生成一下哦)
然后回到你ui转换成的.py文件中将import background_re删除(‘background’就是你.qrc文件的文件名)
重新写
import background
重新运行一下 main文件即可