QT之调用百度地图离线API

QT加载离线地图还是简单。

1、首先要下载百度的瓦片地图,我用的是太乐地图下载器下载的,瓦片地图要放在PAI指定的位置。

2、然后到百度地图开放平台下载接口文件,这里我用的是apiv1.3.min.js,版本虽然低,但是功能是差不多的。

3、可以自己新建一个html文件,代码如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>地图演示</title>
<script type="text/javascript" src="js/apiv1.3.min.js"></script>
<!--script type="text/javascript" src="http://api.map.baidu.com/api?v=1.3"></script-->
<link rel="stylesheet" type="text/css" href="bmap.css"/>
</head>
<body>
<div style="left:0;top:0;width:100%;height:100%;position:absolute;" id="container"></div>
</body>
</html>

4、根据自己的需要,添加功能,具体实现参考地图API示例

5、QT加载html的话用QAxWidget实现。

   QString path = QCoreApplication::applicationDirPath();
    path = path + "/map/"+"map.html";
    ui->axWidget->setControl(QString::fromUtf8("{8856F961-340A-11D0-A96B-00C04FD705A2}"));//注册组件UUID
    ui->axWidget->setObjectName(QString::fromUtf8("my_musicLibraryWebWid"));//设置控件的名称
    ui->axWidget->setFocusPolicy(Qt::StrongFocus);       //设置控件接收键盘焦点的方式:鼠标单击、Tab键
    ui->axWidget->setProperty("DisplayAlerts",false);    //不显示任何警告信息。
    ui->axWidget->setProperty("DisplayScrollBars",true); // 显示滚动条
    QString webStr = QString(path);//设置要显示的Url  kugou的。
    ui->axWidget->dynamicCall("Navigate(const QString&)",webStr);

做完上面步骤,离线地图就加载出来了,是不是很简单。如果还是不怎么懂的话可以加我的QQ群:678758509 讨论。

展开阅读全文

没有更多推荐了,返回首页