ExtJs 4.0 DeskTop集成 百度地图API
经过3天的奋斗最终搞了出来, 网上的资料非常少,希望小⑦的文章对读者有点帮助,PS:小⑦非常努力的~。
不废话,上代码了。
首先。去百度官网Copy一个模版
http://api.map.baidu.com/lbsapi/creatmap/
依据这个模版改的 里面凝视也非常具体就不多说了
导入百度地图API:
这里的KEY 不知道有没有什么限制,麻烦各位去申请一个吧。百度KEY地址:http://lbsyun.baidu.com/
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQveGlhb3FpX2p1aGFv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="" />
创建KEY的时候会有个选项:校验方式,一定要选择IP白名单校验(不知道为什么用SN校验拿到的KEY不能用)
拿到的KEY就加入到 ak=“KEY”
然后创建DeskTop自己定义的Modules
NoteMap.js:
/*
Ext Js 4 DeskTop BaiduMap
尛⑦ 2014年4月23日
DeskTop结合百度地图
*/
Ext.define('V_Ext.Notemap', {
extend: 'Ext.ux.desktop.Module',
requires: [
],
id:'notemap',
init : function(){
this.launcher = {
iconCls:'notepad',
handler : this.createWindow,
scope: this
}
},
createWindow:function (){
var desktop = this.app.getDesktop();
var wiew = desktop.getWindow('notemap');
var strHtml = "<div style='width:100%;height:100%;border:1px' id='mapDiv'>12</div>";
wiew=desktop.createWindow({
autoShow:true,
id:'mapView',
title: '百度破图',
width:800,
height:600,
layout:'fit',
iconCls:'.anchorBL{display:none; } ',
items:[{
id:'myMap',
html:strHtml,
region: 'center'
}]
});
function initMap(){
map = new BMap.Map('mapDiv');
var poi= new BMap.Point(121.487899,31.249162); //我这里是上海 就写的上海的坐标了
map.centerAndZoom(poi,18);
map.enableScrollWheelZoom();
/*setMapEvent();//设置地图事件
*/
addMapControl();//向地图加入控件
addMarker();//向地图中加入marker
}
//地图控件加入函数:
function addMapControl(){
//向地图中加入缩放控件
var ctrl_nav = new BMap.NavigationControl({anchor:BMAP_ANCHOR_TOP_LEFT,type:BMAP_NAVIGATION_CONTROL_LARGE});
//map.addControl(ctrl_nav);
//向地图中加入比例尺控件
var ctrl_sca = new BMap.ScaleControl({anchor:BMAP_ANCHOR_BOTTOM_LEFT});
//map.addControl(ctrl_sca);
}
//marker 标注点数组
var markerArr = [{title:"上海巴士",content:"我的备注",point:"121.573112|31.268779",isOpen:1,icon:{w:23,h:23,l:22,t:22,x:6,lb:5}},
{title:"我的标记",content:"我的备注",point:"121.506153|31.245056",isOpen:0,icon:{w:23,h:25,l:23,t:21,x:9,lb:12}},
{title:"我的标记",content:"我的备注",point:"121.513698|31.2608",isOpen:0,icon:{w:23,h:25,l:23,t:21,x:9,lb:12}}
];
//创建marker
function addMarker(){
for(var i=0;i<markerArr.length;i++){
var json = markerArr[i];
var p0 = json.point.split("|")[0];
var p1 = json.point.split("|")[1];
var point = new BMap.Point(p0,p1);
var iconImg = createIcon(json.icon);
var marker = new BMap.Marker(point,{icon:iconImg});
var iw = createInfoWindow(i);
var label = new BMap.Label(json.title,{"offset":new BMap.Size(json.icon.lb-json.icon.x+10,-20)});
marker.setLabel(label);
map.addOverlay(marker);
label.setStyle({
borderColor:"#808080",
color:"#333",
cursor:"pointer"
});
//marker 事件
(function(){
var index = i;
var _iw = createInfoWindow(i);
var _marker = marker;
_marker.addEventListener("click",function(){
this.openInfoWindow(_iw);
});
_iw.addEventListener("open",function(){
_marker.getLabel().hide();
})
_iw.addEventListener("close",function(){
_marker.getLabel().show();
})
label.addEventListener("click",function(){
_marker.openInfoWindow(_iw);
})
if(!!json.isOpen){
label.hide();
_marker.openInfoWindow(_iw);
}
})()
}
}
//创建InfoWindow
function createInfoWindow(i){
var json = markerArr[i];
var iw = new BMap.InfoWindow("<b class='iw_poi_title' title='" + json.title + "'>" + json.title + "</b><div class='iw_poi_content'>"+json.content+"</div>");
return iw;
}
//创建一个Icon (标注图标)
function createIcon(json){
var icon = new BMap.Icon("http://app.baidu.com/map/images/us_mk_icon.png", new BMap.Size(json.w,json.h),{imageOffset: new BMap.Size(-json.l,-json.t),infoWindowOffset:new BMap.Size(json.lb+5,1),offset:new BMap.Size(json.x,json.h)})
return icon;
}
initMap();
}
});
须要注意的一点就是 V_Ext 是我项目的名字 假设默认的话应该是 MyDesktop ,不要在意这个细节。
ExtJs 4.0 DeskTop集成 百度地图API的更多相关文章
- 集成百度地图API实现定位
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/u010982006/article/details/32347107 一.百度地图API获取定位 A ...
- [ActionScript 3.0] AS3调用百度地图API
package { import baidu.map.basetype.LngLat; import baidu.map.basetype.Size; import baidu.map.config. ...
- Android通过百度地图API用Service和Alarm在后台定时获取地理位置信息
本文主要介绍了Android项目集成百度地图API,使用AlarmManager定时调用Service,在Service中请求坐标更新,并通过坐标得到省.市和县三级地理位置信息的方法. 程序结构很简单 ...
- android 3.0+百度地图api地图如何移动到指定的经纬度处
由于百度地图api,2.0+和3.0+的改动比较大,api基本上被全换过了,有些同学可能2.0+的api使用的非常熟悉,但是更新到3.0+时,却会遇到一些小麻烦(由于api变了,你就需要重新学习它的a ...
- iOS开发之集成百度地图踩过的那些坑(基于 Xcode7.0/iOS9.2)
本篇分4步讲述如何在项目中集成百度地图: 第一步:创建项目 第二步:利用 cocoaPod 导入百度地图的 SDK(pod 'BaiduMapKit' #百度地图SDK) 第三步:在 pch 文件中导 ...
- swift - 百度地图API集成
1.百度搜索 百度地图api 2. 选中之后选择, 看功能需求下载 API 3. 下载的API拖入项目,此处有坑, 如果只用地图或者 定位,这中写着 是 导航的SDK 别拖进去, 不然报错 怕搞错到 ...
- iOS开发---集成百度地图完善版
一.成为百度的开发者.创建应用 http://developer.baidu.com/map/index.php?title=首页 (鼠标移向 然后选择你的项目需要的功能 你可以在里面了解到你想要使用 ...
- iOS开发---集成百度地图
由于iOS MapKit框架很多情况并不能满足我们的需求,我们可以选择集成百度地图,那该如何操作呢? 申请Key 登录百度API管理中心申请Key http://lbsyun.baidu.com/ap ...
- Android端百度地图API使用详解
百度地图API简介 百度地图移动版API(Android)是一套基于Android设备的应用程序接口,通过该接口,可以轻松的访问百度服务和数据,构建功能丰富.交互性强的地图应用程序. 百度地图移动版A ...
随机推荐
- 12月21日 简单理解Active Recore Callback, destroy_all和delete_all的区别。豆知识(alias),语言学习法(4核心)
destroy_all and delete_all Destroy the records by instantiating each record and calling its #destroy ...
- hdu2609 最小表示法
Give you n ( n < 10000) necklaces ,the length of necklace will not large than 100,tell me How man ...
- 51nod1344
有编号1-n的n个格子,机器人从1号格子顺序向后走,一直走到n号格子,并需要从n号格子走出去.机器人有一个初始能量,每个格子对应一个整数A[i],表示这个格子的能量值.如果A[i] > 0,机器 ...
- Oracle11g温习-第六章:控制文件
2013年4月27日 星期六 10:33 .控制文件的功能和特点 1) [定义数据库当前物理状态] 2) [维护数据的一致性] 如果控制文件中的检查点与数据文件中的一致,则说明数据一致,可以启动到 ...
- learning uboot enable protect console
reference :https://github.com/lentinj/u-boot/blob/master/doc/README.autoboot how to enable protect s ...
- poj2895
题解: splay,维护当前第k大 并查集维护当前集合 合并x,y时,del(num[x]),del(num[y]),insert(num[x]+num[y]) 代码: #include<cst ...
- Delphi IDE 版本
产品 compiler Version version bds 2007-WIN32 VER 180 185 11 5.0 2009 VER 200 13 6.0 XE VER 220 15 8.0 ...
- sql server中的go
1. 作用:向 SQL Server 实用工具发出一批 Transact-SQL 语句结束的信号.2. 语法:一批 Transact-SQL 语句GO如Select 1Select 2Select 3 ...
- 做了一个vue的同步tree 的npm组件包
前言:因为现成的tree组件没有找到.亦或是其依赖的其他东西太多,不太合适引入我们的项目,所以自己做了一个.大概样式: 在线例子: https://hamupp.github.io/t-vue-tre ...
- win7自带wifi win7无线网络共享设置图文方法
win7自带wifi win7无线网络共享设置图文方法 点评:开启windows 7的隐藏功能:虚拟WiFi和SoftAP(即虚拟无线AP),就可以让电脑变成无线路由器,实现共享上网,节省网费和路由器 ...