Qt Designer通过资源浏览器插入图片不显示问题

问题

最近在用 PySide2 + Qt Designer做一些简单的开发,在写help界面时用了qtextbrowser往里面插入图片文字等:
Qt Designer通过资源浏览器插入图片不显示问题
先看一下已经编辑保存的资源文件(resource.qrc)位置,具体的图片位于Imag中
Qt Designer通过资源浏览器插入图片不显示问题
接着进行插入并预览,可以正常显示
Qt Designer通过资源浏览器插入图片不显示问题
Qt Designer通过资源浏览器插入图片不显示问题
然而当我尝试调用main.py运行时,图片却无法正常显示。
Qt Designer通过资源浏览器插入图片不显示问题
Qt Designer通过资源浏览器插入图片不显示问题
因为通过资源浏览器的方式进行图片的插入等管理比较方便,因此十分纠结于解决这个问题,但是网上关于这一类图标无法正常显示问题的解决方案不多,且一般都是用的Qt Creator + C++,因此可以通过菜单栏中的build功能解决。然而Qt designer 中是没有build的,因此非常困惑。

解决方法

起初为了解决这个问题,我猜测是helper.ui、mani.py、resource.qrc、import.png这几个文件存放路径导致的不能正常调用,因此尝试了各种组合方式,但都无效。

进一步查阅相关资料后,我意识到在Qt Designer中编辑时resource.qrc是打开的,因此预览没有问题;但是当我运行main.py时,似乎没有打开resource.qrc文件,也就无法正常调用到所有的图片,因此一定需要在main.py中包含resource.qrc文件。然而python中不能直接include,所以需要先用pyside2-rcc.exe将resource.qrc文件编译为.py文件,然后在main.py中导入。

此处关于pyside2-rcc.exe,你可以在Python的Script文件夹中找到(如果安装了pyside2)
Qt Designer通过资源浏览器插入图片不显示问题
具体操作很简单,进入你resource.qrc所在目录,然后:
Qt Designer通过资源浏览器插入图片不显示问题
再然后,你就可以在原来的目录中看到多了一个resource.py文件了,此时在main.py中import resource即可正常显示图片。
Qt Designer通过资源浏览器插入图片不显示问题Qt Designer通过资源浏览器插入图片不显示问题