MFC 接入百度地图
1 第一步首先去百度地图官网申请秘钥http://developer.baidu.com/map申请密匙
2 创建一个对话框mfc 程序
3插入浏览器控件 创建类和控件
4 准备百度网页放入项目中
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<style type="text/css">
body, html,#allmap {width: 100%;height: 100%;overflow: hidden;margin:0;}
#l-map{height:100%;width:78%;float:left;border-right:2px solid #bcbcbc;}
#r-result{height:100%;width:20%;float:left;}
</style>
<script type="text/javascript" src="http://api.map.baidu.com/api?v=2.0&ak=你自己申请的密匙"></script>
<title>百度地图的Hello, World</title>
</head>
<body>
<div id="allmap"></div>
</body>
</html>
<script type="text/javascript">
var map = new BMap.Map("allmap");
map.centerAndZoom(new BMap.Point(104.071216,30.666031), 12);
map.enableScrollWheelZoom(); //启用滚轮放大缩小
map.addControl(new BMap.NavigationControl());
map.addControl(new BMap.OverviewMapControl());
map.addControl(new BMap.ScaleControl());
map.enableScrollWheelZoom();
map.addControl(new BMap.MapTypeControl());
var top_left_navigation = new BMap.NavigationControl(); //左上角,加入默认缩放平移控件
function justmarkfun(JD,WD)
{
var marker1 = new BMap.Marker(new BMap.Point(JD,WD)); // 创建标注
window.map.addOverlay(marker1); // 将标注加入到地图中
}
</script>
5 启动时调用本地页面
6 网页与本地之间的交互
网页调用地图方法
void Cbrower2Dlg::OnBeforenavigate2Explorer1(LPDISPATCH pDisp, VARIANT* URL, VARIANT* Flags, VARIANT* TargetFrameName, VARIANT* PostData, VARIANT* Headers, BOOL* Cancel)
{
//CString strUrl = URL->bstrVal;
CStringA strUrl(URL->bstrVal);
if (strstr(strUrl,"addpoint:") != NULL)
{
MessageBox(strUrl);
*Cancel = true;
return;
}
}
Mfc 调用网页方法
写的比较粗糙,但是基本的功能方法是实现了的,有什么不懂得话,可以私信我