首页 > 解决方案 > QWebEngine 初始化后注册对象

问题描述

目前我正在运行一个 HTML/Javascript 页面QWebEngieView。初始化之后,我想通过 QWebChannel 添加更多的 JS 代码。通过这个通道,在应用程序启动之前也插入了 javascript 代码,一切(显示数据以及调用事件的回调)都按预期工作。

应用程序启动后,每个通过 QWebChannel 新注册的对象都会导致以下消息:

Registered new object after initialization, existing clients won't be notified!

该对象被完美地创建,除了事件回调,但这可能是由于错误消息,现有客户端将不会被通知

阅读QWebChannel 的文档以及在存储库中发现的更多问题(例如https://github.com/skylarkdrones/pyqtlet/issues/29#issuecomment-799662856),您似乎只能在客户端初始化之前注册对象。

客户端初始化后如何通过 QWebChannel 创建对象有什么选择吗?是否有重新加载/重新初始化客户端的选项,以便接收新注册对象的更新?

标签: pythonpyqtqwebchannel

解决方案


推荐阅读