Flyingis

Fusion Center Lab.

ArcGIS Flex API 中的 Flex 技术(一)--事件

    作者:Flyingis

    本文严禁用于商业目的,如需转载请注明作者及原文链接,其他疑问请联系:dev.vip#gmail.com

    在ArcGIS Flex API中探索Flex使用是一种不错的学习方法,可以相互辅助理解ArcGIS Flex API和Flex,这两天重新翻阅了一些官方资料,写一点小结,从之前的一篇事件开始。

    ArcGIS Flex API是基于Flex API的一个开发库,开发之前需要导入agslib.swc,根据WebGIS所需的功能可以想到,事件是用户和地图进行交互的基础,没有丰富的事件交互机制就很难为用户提供完整的WebGIS应用体验,如果换成是自己去设计ArcGIS Flex API,我们会从哪些功能需求入手?

    点击图层的地理要素进行查询,鼠标移动到查询图层的地理要素上方,异步弹出该要素基本信息窗口。没错,这些都是WebGIS的基本需求,那么通过一个sample看在ArcGIS Flex API如何使用事件。

Code


    PanEvent是ArcGIS Flex API中自定义的事件,继承了flash.events.Event,上面例子中所有事件的管理通过addEventListener和 removeEventListenser两个方法实现,并且通过鼠标对地图的点击动作的分解,实现在鼠标点击不同阶段的事件响应,属性信息的获取在 MouseUp阶段,toMapFromStage实现屏幕坐标到地图坐标的转换,并将结果显示在infoWindow中。

    具体的组件中,ArcGISTiledMapServiceLayer和ArcGIS Javascript API中的功能相同,将缓存好的地图服务添加到页面上,"esri"是一个标识符,在mxml页面最上方"xmlns:esri="http://www.esri.com/2008/ags"申明,用以在mxml中使用已定义好的组件。

    ArcGIS Flex API Events Demo包含了常用的一些事件,可以作为参考学习。从下面例子可以了解到,图层加载、图层添加删除、地图放大缩小、地图平移等都被ArcGIS Flex API Events进行了封装,加上原有的鼠标事件就可以基本满足WebGIS应用要求了。

Code

posted on 2008-12-07 21:59  Flyingis  阅读(6111)  评论(0编辑  收藏  举报

导航