Qt使用QWebengineView导致花屏和黑屏现象

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

QCoreApplication::setAttribute(Qt::AA_UseSoftwareOpenGL);
QApplication a;


结果发现浏览器页面正常显示了,后推测应该是有些旧机器支持的OpenGl驱动版本太低,所以需要使用SoftwareOpenGL。需要注意的是,上述的设置必须在创建QApplication实例对象前先运行,否则该设置是无效的。

你可能感兴趣的:(Qt)