如何在QWebengine中调用Javascript中的c++ /Qt函数

How to invoke C++/Qt function from Javascript in QWebengine?

本文关键字:c++ 中的 Qt 函数 Javascript 调用 QWebengine      更新时间:2023-10-16

我看了QWebChannel的Qt例子。

但它是一个C/S应用程序。顺便说一句,它不能在我的电脑(OS X 10.10.5, Qt5.5)上工作。

所有的HTML内容都来自本地磁盘。我不认为它需要插座的东西。

new QWebChannel(navigator.qtWebChannelTransport, function(channel) {
    // all published objects are available in channel.objects under
    // the identifier set in their attached WebChannel.id property
    var foo = channel.objects.foo;
    // access a property
    alert(foo.hello);
    // connect to a signal
    foo.someSignal.connect(function(message) {
        alert("Got signal: " + message);
    });
    // invoke a method, and receive the return value asynchronously
    foo.someMethod("bar", function(ret) {
        alert("Got return value: " + ret);
    });
});

没有

navigator.qtWebChannelTransport

这样的事情,JS停在那里。

我应该用第一个参数填充什么?


对于QtWebEngine,您必须使用qt.webChannelTransport