我是 QT 的新手。我一直试图看到 javascript 和 Qt 类之间的桥梁。
我做了什么:
1)我有一个按钮并将点击信号连接到on_pushButton_clicked,我也有qwebview实例。
在 on_pushButton_clicked 中:
...
QUrl url = QUrl::fromLocalFile("C:\\whoami\\sd\\index.html");
QObject::connect(ui->webView->page()->mainFrame(), SIGNAL(javaScriptWindowObjectCleared()),
this, SLOT(addJSObject()));
ui->webView->page()->mainFrame()->load(QUrl(url));
....
在 addJSObject 中,
void MainWindow::addJSObject()
{
qDebug () <<"Inside addJSObject";
ui->webView->page()->mainFrame()->addToJavaScriptWindowObject(QString("mBridge"), m_bridge);
qDebug () <<"Nooo. I m not invoked..";
}
问题:
它编译没有错误,并且 html 文件显示在 qwebview 中,但没有调用 addJSObject 回调。
有人可以帮我解决这个问题吗?..我一定犯了一些愚蠢的错误。:(。