-
Notifications
You must be signed in to change notification settings - Fork 30
Open
Description
你好:
目前想做一個關於GPS結合Qt的小專案,目前選擇Google Map作為我的地圖,在使用QWebengineView時事可以順利載入地圖的,但我無法使用 webview->page()->runjavascript() 去操作Javascript內的function 程式碼 。
QUrl url("qrc:/map.html");
QWebEngineSettings::globalSettings()->setAttribute(QWebEngineSettings::PluginsEnabled,true);
QWebEngineSettings::globalSettings()->setAttribute(QWebEngineSettings::JavascriptEnabled,true);
QWebEnginePage *page = new QWebEnginePage(this);
QWebChannel *channel = new QWebChannel(this);
page->load(url);
page->setWebChannel(channel);
ui->widget->setPage(page);
QString js=QString("var marker = new google.maps.Marker({ ")+
QString("position: new google.maps.LatLng(24.705311, -74.2581939),")+
QString(" map: map,")+
QString("title: \"Marker A\",")+
QString(" }); ");
ui->widget->page()->runJavaScript(js,[](const QVariant &result){ qDebug() << result.toBool(); });
錯誤回報:
js: Uncaught ReferenceError: google is not defined
目前才剛接觸Qt 的Web功能和javascript,所以也不知道問題出在哪裡?
另外一定要使用Qt webchannel才能對javascript操作嗎?
謝謝!!
開發環境:
Ubuntu 16.04
Qt 5.7
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels