You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PyQt中调用QtWebEngine::initialize()解决初始化错误?

解决PyQt5中QtWebEngine初始化错误的问题

运行包含QML WebEngineView的PyQt5程序时出现如下错误:

WebEngineContext used before QtWebEngine::initialize() or OpenGL context creation failed.

解决方法

在PyQt5中,对应C++的QtWebEngine::initialize()的方法是QtWebEngine.initialize(),需要在创建QGuiApplication实例之前调用。

修改后的Python代码如下:

import sys
from PyQt5.QtWebEngine import QtWebEngine
from PyQt5.QtGui import QGuiApplication
from PyQt5.QtQml import QQmlApplicationEngine

# 先初始化QtWebEngine
QtWebEngine.initialize()

app = QGuiApplication(sys.argv)

engine = QQmlApplicationEngine()
engine.quit.connect(app.quit)
engine.load('main.qml')

sys.exit(app.exec())

注意事项

  • 必须确保QtWebEngine.initialize()在QGuiApplication实例化之前执行,否则错误依然会出现。
  • 原有的QML代码无需修改,保持原样即可。

内容的提问来源于stack exchange,提问作者kharandziuk

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.16 03:59:51