Qt5.6.0网页闪烁、重影问题记录

通过Qt打开网页,使用鼠标移动或者滚动页面的时候页面会出现闪动、重影等问题,一开始考虑的可能是页面刷新问题(方向没错),搜索能很久一直没有解决,功夫不负有心人,终于及时解决了该问题,感谢网友,此问题在此记录一下

Qt自5.6版本以来已经放弃了Webkit,其内置的浏览器控件使用的是chromium内核,对应用的类是QWebengieView及QWebengiePage类。近日,在项目中使用了QWebengieView类做一个定制版的浏览器,但奇怪的是,在某些旧显卡机器上启动程序时,浏览器页面显示了花屏的现象,百思不得其解,后在网上找资料,发现Qt可以在程序启动前设置UI的渲染类型,于是尝试了一下以下设置:
QCoreApplication::setAttribute(Qt::AA_UseSoftwareOpenGL);
QApplication a;
结果发现浏览器页面正常显示了,

不过新的问题又出现了,部分电脑在关闭的时候会崩溃,查了很久是qt5.6.0版本的一个bug,

main入口设置如下:

QCoreApplication::setAttribute(Qt::AA_UseOpenGLES);

问题得以解决,后面使用了Qt5.12版本后不需设置也正常了,可能是qt优化了某些问题。需要注意的是,上述的设置必须在创建QApplication实例对象前先运行,否则该设置是无效的。
————————————————
参考网友:https://blog.csdn.net/chaosty414/article/details/77885490

你可能感兴趣的:(网络)