我想向JS公开一些C ++对象。到目前为止,我使用修饰符Q_OBJECT
Q_POPERTY
Q_INVOKABLE
将对象正确地暴露给QML,依此类推。那部分工作正常。
当然,在C ++方面,我创建一个WebChannel并使用类似的东西公开一个对象:
QWebChannel *channel = new QWebChannel();
channel->registerObject("test", prueba);
另一方面,我有一个QML文件,我使用WebEngineView
和WebChannel
。我想知道如何在C ++和QML之间连接通道。
我见过许多例如this但我不知道如何将其与QML集成。
有什么想法吗?
答案 0 :(得分:1)
您不应该在QML和C ++中创建新的(Q)WebChannel
。通过这种方式,您可以获得两个不同的渠道。
如果您想在QML中访问该频道,我建议您构建一个WebChannel
,实际上是QQmlWebChannel
并继承QWebChannel
。