Qt WebView并单击谷歌地图

Qt WebView并单击谷歌地图,qt,google-maps,Qt,Google Maps,有人试图通过QWebView的鼠标事件方法点击QtQWebView中显示的谷歌地图吗?我想这样做,因为我需要在Qt和google地图中运行一些操作(当我点击地图时,我想添加一个公交车站,它将加载到程序中,标记将在地图上显示)。我有一个方法来添加一个placemark,我知道我可以调用它,但是我在传递正确的位置时遇到了问题 void MyWebView::mousePressEvent(QMouseEvent * e) { QString command = "placeMarker(ne

有人试图通过QWebView的鼠标事件方法点击QtQWebView中显示的谷歌地图吗?我想这样做,因为我需要在Qt和google地图中运行一些操作(当我点击地图时,我想添加一个公交车站,它将加载到程序中,标记将在地图上显示)。我有一个方法来添加一个placemark,我知道我可以调用它,但是我在传递正确的位置时遇到了问题

void MyWebView::mousePressEvent(QMouseEvent * e) {
    QString command = "placeMarker(new google.maps.LatLng(";
    command.append(new QString(e->x()));
    command.append(", ");
    command.append(QString(e->y()));
    command.append("))");
    this->page()->mainFrame()->evaluateJavaScript(command);

}

我发现这里有几个问题。x和y是相对于QWebView左上角的坐标,google.maps.LatLng采用纬度和经度角。或者您只是将其用作一个结构,将一对坐标传递给placeMarker函数,然后在那里正确地转换它们?如果是,则地图元素是否在左上角?如果没有,则需要修复偏移。我会反过来做,让谷歌地图处理点击,捕捉点击,然后调用你的C++方法从JavaScript。我想知道如何转换这个坐标,但你的建议要好得多。非常感谢。:)