经过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的更多相关文章

  1. 集成百度地图API实现定位

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/u010982006/article/details/32347107 一.百度地图API获取定位 A ...

  2. [ActionScript 3.0] AS3调用百度地图API

    package { import baidu.map.basetype.LngLat; import baidu.map.basetype.Size; import baidu.map.config. ...

  3. Android通过百度地图API用Service和Alarm在后台定时获取地理位置信息

    本文主要介绍了Android项目集成百度地图API,使用AlarmManager定时调用Service,在Service中请求坐标更新,并通过坐标得到省.市和县三级地理位置信息的方法. 程序结构很简单 ...

  4. android 3.0+百度地图api地图如何移动到指定的经纬度处

    由于百度地图api,2.0+和3.0+的改动比较大,api基本上被全换过了,有些同学可能2.0+的api使用的非常熟悉,但是更新到3.0+时,却会遇到一些小麻烦(由于api变了,你就需要重新学习它的a ...

  5. iOS开发之集成百度地图踩过的那些坑(基于 Xcode7.0/iOS9.2)

    本篇分4步讲述如何在项目中集成百度地图: 第一步:创建项目 第二步:利用 cocoaPod 导入百度地图的 SDK(pod 'BaiduMapKit' #百度地图SDK) 第三步:在 pch 文件中导 ...

  6. swift - 百度地图API集成

    1.百度搜索  百度地图api 2. 选中之后选择, 看功能需求下载 API 3. 下载的API拖入项目,此处有坑, 如果只用地图或者 定位,这中写着 是 导航的SDK 别拖进去, 不然报错 怕搞错到 ...

  7. iOS开发---集成百度地图完善版

    一.成为百度的开发者.创建应用 http://developer.baidu.com/map/index.php?title=首页 (鼠标移向 然后选择你的项目需要的功能 你可以在里面了解到你想要使用 ...

  8. iOS开发---集成百度地图

    由于iOS MapKit框架很多情况并不能满足我们的需求,我们可以选择集成百度地图,那该如何操作呢? 申请Key 登录百度API管理中心申请Key http://lbsyun.baidu.com/ap ...

  9. Android端百度地图API使用详解

    百度地图API简介 百度地图移动版API(Android)是一套基于Android设备的应用程序接口,通过该接口,可以轻松的访问百度服务和数据,构建功能丰富.交互性强的地图应用程序. 百度地图移动版A ...

随机推荐

  1. Trailing Loves (or L'oeufs?) CodeForces - 1114C (数论)

    大意: 求n!在b进制下末尾0的个数 等价于求n!中有多少因子b, 素数分解一下, 再对求出所有素数的最小因子数就好了 ll n, b; vector<pli> A, res; void ...

  2. 负载均衡中使用 Redis 实现共享 Session

    最近在研究Web架构方面的知识,包括数据库读写分离,Redis缓存和队列,集群,以及负载均衡(LVS),今天就来先学习下我在负载均衡中遇到的问题,那就是session共享的问题. 一.负载均衡 负载均 ...

  3. UVA-12304 Race(递推)

    题目大意:求n个人比赛的所有可能的名次种数.比如:n=2时,有A第一B第二.B第一A第二.AB并列第一三种名次. 题目解析:既然是比赛,总有第一名.第一名的人数可能是i (1≤i≤n),则剩下待定的人 ...

  4. OAF中多语言的实现(转)

    正好前两天研究过这个问题,分享一下啊. 标题:        OAF中多语言的实现概述:        OAF的多语言的实现有两种方式,其一是直接通过页面上面的“个性化”连接,连接到指定的页面后,进行 ...

  5. Centos7上部署openstack ocata配置详解

    之前写过一篇<openstack mitaka 配置详解>然而最近使用发现阿里不再提供m版本的源,所以最近又开始学习ocata版本,并进行总结,写下如下文档 OpenStack ocata ...

  6. en_e out1

      1◆e i: ə ɜː e i   2◆ eu 3◆ ew 4◆ ei ey eu ew 5◆ eer ue   6◆ ee u: u   7◆ er ɜː     8◆ ere ie ue   ...

  7. laravel日志:

    laravel日志写入方法之一: Log::info('Showing user profile for user: 147258369');把日志写入到某个方法中之后,执行方法之后,日志存储起来. ...

  8. learning uboot distro design in am335x-evm board

    reference: uboot_dir/doc/README.distro Linux distributions are faced with supporting a variety of bo ...

  9. Flash Player离线安装包下载指南

    在机房里装软件,没网是正常现象,有些老师要装Firefox/Chrome浏览器要有Flash,网上搜来搜去都是在线安装包一日在V2EX闲逛时发现了一位大神给出了Flash的离线安装包下载方式,在此立个 ...

  10. Vue 框架中遇到的诀窍

    问题一. 我需要渲染数组A,并根据 B数组中是否存在A中,给A添加 选中状态sel. 经过很焦虑的研究后,寻求帮助得到答案. 1.初始化数据时 A添加属性flag(bool)标识,如果B中存在A中某个 ...