QT5百度地图开发学习——JavaScript调用qt函数并传参给qt

Posted 四面楚歌吾独唱

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了QT5百度地图开发学习——JavaScript调用qt函数并传参给qt相关的知识,希望对你有一定的参考价值。

前言

上一篇文章《QT5百度地图开发学习——qt调用JavaScript函数并传参》讲了qt调用javascript函数,并且实现了参数的传递。本文实现的便是JavaScript调用qt函数并传参。
功能:点击地图,在地图上标记点击点,并且传递该点经纬度坐标给QT,qt将其在终端打印出来。

一、js代码与bridge的槽函数

标记点的js代码如下,一个监听事件(百度地图api有示例)

//添加标记点
map.addEventListener('click', function (e) {
    var point = new BMapGL.Point(e.latlng.lng, e.latlng.lat); // 创建标注
    var marker = new BMapGL.Marker(point, {
        enableDragging: true});                    //标注点可移动
    map.addOverlay(marker);                         // 将标注添加到地图中
    bridge_js.getCoordinate(point.lng, point.lat);//调用qt的bridge文件中的.getCoordinate()函数,参数为point.lng, point.lat
});

bridge中getCoordinate()函数设计。
.h文件加如槽函数声明

public slots:
    void getCoordinate(QString lon,QString lat);

.cpp文件写入槽函数即可。


void bridge::getCoordinate(QString lon, QString lat)
{
    qDebug()<<QString("clicked:")<<lon<<lat;
}

这样就可以将参数传递给QT啦。结果如图所示:

加油加油

以上是关于QT5百度地图开发学习——JavaScript调用qt函数并传参给qt的主要内容,如果未能解决你的问题,请参考以下文章

百度地图JavaScript API使用

C#实现百度地图附近搜索&调用JavaScript函数

百度地图API快速调用,一键生成百度地图

javascript调用百度地图通过ip定位 手机浏览器打开浏览不显示街道地址

最全面的百度地图JavaScript离线版开发

如何调用百度地图API