问题描述
之前写过一个项目,使用WebEngineView加载本地HTML文件进行显示。刚开始在Linux和Windows两个系统上都能正常使用。后来Linux系统升级后(Deepin Linux系统),开始显示空白;而Windows系统下正常使用。这个问题大概从20年11月持续到现在,走了一些弯路,一直未能解决。
- 刚开始直接运行出现段错误,排查出是PyQt调用show函数后导致。
- 设置export QT_DEBUG_PLUGINS=1进行调试,发现提示libxcb-util.so.1未找到,使用apt-get命令重装无法解决,后单独下载libxcb-util1_0.4.0-1b1_amd64.deb文件进行安装解决了libxcb-util.so.1未找到问题。但依然显示空白。
后来进一步发现load(QUrl(‘http://www.bing.com’)能够正常加载显示页面,并且setHTML的方式也能正常加载显示,表明显示应该是没问题的,可能是设置本地HTML文件的方式存在问题。但网上很多关于WebEngineView的例程都采用了load(QUrl(QFileInfo(‘xxx.html’).absoluteFilePath()))加载HTML文件的方式,按道理说应该是没问题的(Windows系统采用这种方式也能正常显示),一时间没有头绪。
这种问题在网上查到的信息非常有限,找到两个相关的文章,都是windows系统下的问题,没有什么用处:
https://blog.csdn.net/jolin678/article/details/99711317
https://www.zhihu.com/question/43524695