Arcgis Server javascript— EXT布局设计
来源:互联网 发布:淘宝退款怎么申请介入 编辑:程序博客网 时间:2024/06/07 12:12
ExtJS是一种主要用于创建前端用户界面,这里主要是用到它的布局部件,和dojo相比,比较漂亮,用起来也比较方便。个人还在探索中,尝试布局、控件展示等交换界面用ExtJS,核心的函数代码用dojo,毕竟Arcgis Server javascript API 是建立在dojo基础上的。
<HTML><HEAD><TITLE>Map Of MJ</TITLE><link rel="stylesheet" type="text/css" href="ExtJS/resources/css/ext-all.css" /><script type="text/JavaScript" src="ExtJS/ext-all.js"></script> <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.8/js/dojo/dijit/themes/claro/claro.css"/> <link rel="stylesheet" type="text/css" href="http://serverapi.arcgisonline.com/jsapi/arcgis/2.8/js/esri/css/esri.css" /> <script src="http://serverapi.arcgisonline.com/jsapi/arcgis/?v=2.8" type="text/javascript"></script> <script type="text/javascript"> var djConfig = { parseOnLoad: true }; </script> <script type="text/javascript"> dojo.require("esri.map"); dojo.require("esri.dijit.OverviewMap"); dojo.require("esri.dijit.Scalebar"); dojo.require("dijit.dijit"); // optimize: load dijit layer dojo.require("dojo.parser"); dojo.require("esri.toolbars.navigation"); var map; var navToolbar; function initialize() { var startExtent = new esri.geometry.Extent(-117.125,36.672,-105.875,42.297, new esri.SpatialReference({wkid:4326}) ); map = new esri.Map("map", {extent:esri.geometry.geographicToWebMercator(startExtent)}); var layer = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer"); map.addLayer(layer); navToolbar = new esri.toolbars.Navigation(map); dojo.connect(map, 'onLoad', function(theMap) { //resize the map when the browser resizes dojo.connect(dijit.byId('map'), 'resize', map,map.resize); //add the overview map var overviewMapDijit = new esri.dijit.OverviewMap({ map: map, visible:false }); overviewMapDijit.startup(); }); dojo.connect(map, 'onLoad', function(theMap) { dojo.connect(dijit.byId('map'), 'resize', map,map.resize); var scalebar = new esri.dijit.Scalebar({ map: map, scalebarUnit:'english' }); }); dojo.connect(map, "onLoad", function() { //after map loads, connect to listen to mouse move & drag events dojo.connect(map, "onMouseMove", showCoordinates); dojo.connect(map, "onMouseDrag", showCoordinates); }); } function showCoordinates(evt) { //get mapPoint from event //The map is in web mercator - modify the map point to display the results in geographic var geoPt = esri.geometry.webMercatorToGeographic(evt.mapPoint); //display mouse coordinates dojo.byId("info").innerHTML = geoPt.x.toFixed(2) + ", " + geoPt.y.toFixed(2); } dojo.addOnLoad(initialize); </script> <script type="text/javascript">function createLayout(){ var viewport = new Ext.Viewport({layout: 'border',renderTo: Ext.getBody(),items: [{region: 'north',xtype: 'panel',height:100,split: true,collapsible: true,collapsed :true,collapseMode: 'mini',hideCollapseTool:true,html: 'LOGO'},{region: 'west',split: true,collapsible: true,//collapseMode: 'mini'关闭时状态title: '菜单',bodyStyle:'padding:5px;',width: 200, minSize: 200,collapsed :true,//就是这个collapsed掌握了自动填充 xtype: 'tabpanel',activeTab: 0,items: [{title: '图层管理'},{title: '空间查询',layout: 'accordion',items: [{title: '属性查询',html:'<input type="button" value="清除" />'},{title: '图形查询'},{title: '高级查询'}]}]},{region: 'center',layout: { type: 'border' }, items: [{ region: 'center',//地图显示窗口xtype: 'panel',html: '<div id="map" class="claro" style="width:100%; height:100%; border:1px solid #000;"></div><span id="info" style="position:absolute; right:10px; bottom:1px; color:#002; z-index:50;"></span> ' }, { region: 'north', //工具栏 xtype: 'panel', height: 30, tbar: tbar }]}]});}//工具栏的定义 var tbar = Ext.create("Ext.Toolbar", { height:30, items: ['', "-",{ xtype: 'button', text: '放大', cls: 'x-btn-text-icon', icon: 'img/zoom-in.gif', tooltip: 'Fixed Zoom In', handler: function() { navToolbar.activate(esri.toolbars.Navigation.ZOOM_IN); } },{ xtype: 'button', text: '缩小', cls: 'x-btn-text-icon', icon: 'img/zoom-out.gif', tooltip: 'Fixed Zoom Out',handler: function() { navToolbar.activate(esri.toolbars.Navigation.ZOOM_OUT); } },{ xtype: 'button', text: '全图', cls: 'x-btn-text-icon', icon: 'img/full-extent.gif', tooltip: 'Shows the Full Extent of Map',handler: function() { navToolbar.zoomToFullExtent(); } }, { xtype: "splitbutton", text: "按钮" }, { text: "菜单", menu: { items: [ { text: '选项1' }, { text: '选项2' }, { text: '选项3', handler: function () { Ext.Msg.alert("提示", "来自菜单的消息"); } } ] } }] });Ext.onReady(function(){ createLayout();});</script></HEAD><body></body></html>
- Arcgis Server javascript— EXT布局设计
- ArcGIS JavaScript API开发的地图—重新布局
- lzugis——Arcgis Server for JavaScript API之POI
- Arcgis Server javascript— ExtJS显示查询数据
- Web地图设计模式——ArcGIS Server
- 用ext js toolbar创建arcgis server adf 的工具栏
- ArcGis Server Javascript API 安装配置实录
- ArcGIS Server JavaScript API 学习笔记
- Dreamweaver上搭建ArcGIS Server Javascript API+
- ArcGIS server javascript api基于jQuery插件
- ArcGIS Server for JavaScript api安装部署
- ArcGIS Server for JavaScript api安装部署
- ArcGIS Server JavaScript实现实现buffer分析
- ArcGIS Server JavaScript API 自定义导航2
- ArcGIS Server for JavaScript API安装部署
- S1.1 Arcgis Server Javascript API 介绍
- ArcGIS Server JavaScript API 学习笔记
- EXT.NET复杂布局(四)——系统首页设计(上)
- 如何在项目中引入.h、.lib和dll、以及.cpp
- android平台工程移植问题
- S2SH中java.lang.NoSuchMethodError错误分析
- 关于android ndk出现ReferenceTable overflow (max=1024)的解决方法
- 少编码多思考:代码越多 问题越多
- Arcgis Server javascript— EXT布局设计
- J2EE J2SE J2ME JDK SDK JRE JVM
- mysql编码格式问题
- IOS学习笔记38——NSJSONSerialization使用
- socket connect的问题
- hadoop中使用distributed cache遇到的问题
- Spring事务配置的五种方式
- 分享Lucene全文搜索工具學習
- 精通DX图形与动画设计学习(2)(2012.12.18)