经过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. hdu-4289 最大流Dinic模板题

    拆点,套模板. 详情见代码. // // main.cpp // hdu_4289 // // Created by Luke on 16/8/29. // Copyright © 2016年 Luk ...

  2. Python面向对象编程、类

    一.面向对象编程 面向对象--Object Oriented Programming,简称oop,是一种程序设计思想.在说面向对象之前,先说一下什么是编程范式,编程范式你按照什么方式来去编程,去实现一 ...

  3. python-day45--mysql索引

    一 .介绍 为何要有索引? 一些复杂的查询操作,对查询语句的优化显然是重中之重.说起加速查询,就不得不提到索引了. 什么是索引? 索引在MySQL中也叫做“键”,是存储引擎用于快速找到记录的一种数据结 ...

  4. C# 中的时间(DataTime)

    在做报表或查询的时候,常常会预设一些可选的日期范围,如本周.本月.本年等,利用 C# 内置的DateTime基本上都可以实现这些功能. 当前时间: DateTime dt = DateTime.Now ...

  5. 自动化测试框架Taffy

    Taffy Taffy是基于nosetests的自动化测试框架. Taffy主要用来测试后台服务(包括且不限于Http, Dubbo/hessian, Webservice, Socket等类型接口) ...

  6. mysql 到postgresql

    1 import pandas as pd 2 import psycopg2 3 from io import StringIO 4 import pymysql 5 conf={"mys ...

  7. 关于CentOS 7 下的Oracle11g的proc编译器的一些常见问题

    1.proc编译器配置问题 在使用proc将.pc文件编译成.c文件时出现一堆的错误,网上的答案七杂八杂的,都没有解决我的问题. 如下是我在使用过程中的一些错误: 由于我可能比较笨,实在是受不了网上那 ...

  8. python笔记02:列表与元素

    本章将引入一个新的概念:数据结构.数据结构是通过某种方式(例如对元素进行编号)组织在一起的数据元素的集合.这些数据元素可以是数字或者字符,甚至可以是其他数据结构.在python中,最基本的数据结构是序 ...

  9. Runtime的基本运用

    一.什么是runtime(也就是所谓的“运行时”,因为是在运行时实现的.)           1.runtime是一套底层的c语言API(包括很多强大实用的c语言类型,c语言函数);  [runti ...

  10. ansible role[初稿]

    ansible roles role_name/ files/:存储由copy或script等模块调用的文件: tasks/:此目录中至少应该有一个名为main.yml的文件,用于定义各task:其它 ...