开发Widget开发工具:Flex Builder3 开发语言:ActionScript & mxml 1)开发环境配置: a) 首先确保Flex Builder3(Flex SDK 3.1)安装成功,并下载Flex viewer(libs目录中包含ArcGIS API for Flex v1.0)。 b) 解压下载下来的Flex viewer压缩包。 c) 打开Flex Builder3,将刚解压出来的源代码导入到flex workspace中。在导入向导中选择源代码的目录,点击finish。 d) 编译Flex Viewer。选中当前工程,在Project 菜单下选择Build Project。 2)自定义widget开发 a) 新建一个mxml组件(右键单击flex Viewer ,选择New->MXML Component)。选择组件目录,输入组件名称,并确保该组件继承BasWidget类。 b) 将创建好的widget添加Flex Builder Project Module list。 右键单击Flex Viewer 工程,选择属性(properties),打开属性配置框,然后在左边列表择Flex Modules。单击Add按钮,选择MyFirstWidget.mxml。这一步的目的是确保MyFirstWidget能够被编译成单独的swf文件。 c) 编译widget。 重新编译整个Flex Viewer 工程即可。编译完成之后在bin-debug目录下就会有MyFirstWidget.swf。 3)使用WidgetTemplate 打开MyFirstWidget.mxml文件,内置的WidgetTemplate提供了丰富的界面元素。下面介绍如何部署Widget。 a) 把Widget加入到config.xml文件中。 打开config.xml文件并在标签中添加代码: b) 保存config.xml文件并重新编译Flex Viewer。 c) 运行Flex Viewer。 d) 从Tool菜单中选择My First Widget。 至此,通过代码就完成了个基本的Widget UI 设计,已经有了最大化,最小化,关闭等功能。下一步,就是实现业务逻辑。 4) 访问地图 (Accessing a Map) Flex Viewer是一个以地图为中心的应用程序,所有的操作都是围绕地图来进行。Flex Viewer初始化之后,Widget就可以访问地图了(来自ArcGIS Server 的地图服务)。 map是BaseWidget类中定义的一个public 属性,只要是继承BaseWidget的类都可以访问改属性,该属性是com.esri.ags.Map(ArcGIS API for Flex)类型,因此可以使用map对象访问任何在ArcGIS API for Flex中的对象。当widget 被加载之后,widget manager会动态的把当前活动的地图对象关联到widget。 5) 在地图上显示业务数据 a) 添加Graphics Layer 建议为每个Widget都创建一个Graphics Layer。 b) Widget打开/最小化的时候打开/关闭Graphics Layer WidgetTemplate提供了2个窗口状态的事件:widgetOpened 和 widgetClosed,可以使用这两个事件来同步WidgetTemplate窗口状态的变化和Graphics Layer显示。当widget打开的时候显示Graphics Layer,当widget关闭的时候隐藏Graphics Layer。例子如下: 首先侦听widgetOpened 和 widgetClosed事件。 在widgetOpened 和 widgetClosed事件的响应函数中控制Graphics Layer的显示。 6)Widget中使用绘制功能在 Flex Viewer 中通过调用setMapAction方法,可以方便的进行地图上的绘制。setMapAction是在BaseWidget类中定义的public方法,因此只要继承于BaseWidget类的Widget都可以使用该方法。 setMapAction方法的定义如下: 参数: action: String 类型,定义为当前绘制操作的要素类型。对应ArcGIS Flex API 中绘制工具的绘制要素类型。对应列表如表3-2:表 3-2:flexViewrer与ArcGIS API for Flex绘制消息对应表 Flex Viewer ArcGIS API for Flex extent Draw.EXTENT point Draw.MAPPOINT line Draw.LINE polyline Draw.POLYLINE polygon Draw.POLYGON multipoint Draw.MULTIPOINT freehandpolyline Draw.FREEHAND_POLYLINE freehandpolygon Draw.FREEHAND_POLYGON status: String 类型,在控制栏上显示的状态文本。 callback: Function类型,绘制结束后调用的回调函数。回调函数的定义可以参考下面代码:
分享到:
相关推荐
在ArcGIS Flex API中使用天地图的地名搜索服务。源代码中通过ArcGIS Flex API封装了TianDiTuLocationTask类,接口类似ArcGIS Flex API中task类。
分别用ArcGIS Flex API和SuperMap Flex API实现的军标箭头库,有需要源码的可回复邮箱索取。
arcgis flex api 2.5 最新
arcgis flex api 3.0 离线帮助文档chm格式 绝对好用!
ArcGIS Flex API—高级篇 聚合 编辑 皮肤 编写库 移动设备 数据传输
ArcGIS Flex API初级篇,对Flex的初级讲解
ArcGIS Flex API和Java API的集成 esri的培训资料
建立基于ArcGIS Flex API的地图应用 ArcGIS Server 开发概要 ArcGIS Server REST API ArcGIS API For Flex...
ArcGIS API for FLEX全部代码实例
Arcgis flex api自定义风场点图标样式
ARCGIS Flex API 2.4版本 离线帮助
基于ArcGIS Flex API开发Flex AIR Mobile应用
arcgis flex api 3.0 官方正式版, 包含范例。
ArcGIS Flex API 2.0 离线参考 EXE格式
基于ArcGIS Flex API实现动态标绘,1.1版本,支持ArcGIS Flex API 3.6。支持绘制功能和编辑功能。
基于ArcGIS Flex API实现动态标绘,1.2版本,支持ArcGIS Flex API 3.6。支持绘制功能和编辑功能。 1.2版本新增对基本标绘符号的支持,包括点、多点、折线、手绘线、多边形、手绘多边形,矩形等,并提供相应编辑功能...
ArcGIS Flex API 中的 Flex 技-面向对象
ArcGIS Flex API 中的 Flex 技术-异步特征
ArcGIS Flex API 中的 Flex 技-xml解析
Flex项目,其中包含了扩展ArcGIS Flex API Geometry实现的集合图形的swc库文件,包含圆、圆弧、椭圆、五角星形、等腰多边形、扇形等。Flex项目是对这个库文件中各个geometry使用的说明。