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

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

最近在搞 Ant Design 的二次开发,需要迁移一个界面到 Qt(golang) 开发的 Mac 版的桌面程序里。桌面程序加载了一个 QWebengine 创建的 webview, webview 然后去 load 一个 url , 到这里一切还正常。

每次点击界面里的按钮去和后端进行交互成功后,界面带着后端返回的数据进行重新渲染都会出现组件背景色变黑 (花屏和黑屏现象)。

原因是有些旧机器支持的 OpenGL 驱动版本太低,所以需要使用 SoftwareOpenGL 。

伪代码:

qApplication := widgets.NewQApplication(len(os.Args), os.Args)
qApplication.SetAttribute(core.Qt__AA_UseSoftwareOpenGL, true)

添加以上代码可以解决问题。

原文 参考链接