CODE

<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" xmlns:esri="http://www.esri.com/2008/ags">
<fx:Script>
<![CDATA[
import com.esri.ags.Graphic;
import com.esri.ags.events.FindEvent;
import com.esri.ags.geometry.Geometry;

private function doFind():void
{
findTask.execute(myFindParams);

}
private function executeCompleteHandler(event:FindEvent):void
{
myGraphicsLayer.clear();
var graphic:Graphic;
resultSummary.text = "找到" + event.findResults.length + "结果.";
var resultCount:int = event.findResults.length;
for (var i:Number = 0; i < resultCount; i++)
{
graphic = event.findResults[i].feature;
graphic.toolTip = event.findResults[i].foundFieldName + ": " + event.findResults[i].value;

switch (graphic.geometry.type)
{
case Geometry.MAPPOINT:
{
graphic.symbol = sms;
break;
}
case Geometry.POLYLINE:
{
graphic.symbol = sls;
break;
}
case Geometry.POLYGON:
{
graphic.symbol = sfs;
break;
}
}
myGraphicsLayer.add(graphic);
}

}
]]>
</fx:Script>
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
<!-- Symbol for Find Result as Polyline -->
<esri:SimpleLineSymbol id="sls"
width="3"
alpha="0.9"
color="0xFFFF00"
style="solid"/>

<!-- Symbol for Find Result as Point -->
<esri:SimpleMarkerSymbol id="sms"
alpha="0.9"
color="0xFFFF00"
size="11"
style="cross">
<esri:SimpleLineSymbol color="0x000000"/>
</esri:SimpleMarkerSymbol>

<!-- Symbol for Find Result as Polygon -->
<esri:SimpleFillSymbol id="sfs"
alpha="0.7"
color="0xFFFF00"/>

<esri:FindTask id="findTask" executeComplete="executeCompleteHandler(event)"
url="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer"/>
<esri:FindParameters id="myFindParams" returnGeometry="true" contains="true"
searchText="{qText}" layerIds="[0,1,2]" searchFields="[CITY_NAME,NAME,SYSTEM,STATE_ABBR,STATE_NAME]"/>

</fx:Declarations>
<s:layout>
<s:VerticalLayout paddingTop="10" paddingLeft="10" paddingRight="10"/>
</s:layout>
<s:BorderContainer width="100%" height="40" backgroundColor="0xDDDDFF" borderVisible="false">
<s:layout>
<s:HorizontalLayout horizontalAlign="center"
paddingLeft="20"
paddingTop="10"/>
</s:layout>
<s:TextInput id="qText" text="Paradise" enter="doFind()"/>
<s:Button label="查询" click="doFind()"/>
</s:BorderContainer>
<s:Label id="resultSummary" height="15"/>
<mx:HDividedBox width="100%" height="100%">
<esri:Map id="myMap">
<esri:ArcGISDynamicMapServiceLayer
url="http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Specialty/ESRI_StatesCitiesRivers_USA/MapServer"/>
<esri:GraphicsLayer id="myGraphicsLayer"/>
</esri:Map>
<mx:DataGrid width="40%" height="100%" dataProvider="{findTask.executeLastResult}">
<mx:columns>
<mx:DataGridColumn width="70"
dataField="layerId"
headerText="图层ID" />
<mx:DataGridColumn dataField="layerName" headerText="图层名字"/>
<mx:DataGridColumn dataField="foundFieldName" headerText="已找到图层"/>
<mx:DataGridColumn dataField="value" headerText="图层值"/>
</mx:columns>

</mx:DataGrid>

</mx:HDividedBox>
</s:Application>

转载于:https://www.cnblogs.com/gisak/archive/2011/05/06/2039284.html

FindTask练习相关推荐

  1. ArcGIS中QueryTask,FindTask,IndentifyTask 之间的区别

    QueryTask:         查询的是featurelayer,可进行空间或者属性查询,也就是地图服务后面加上图层索引,他的地址是这样的,http://10.200.223.191:6080/ ...

  2. ArcGIS API For JavaScript——空间查询(FindTask和IdentifyTask)

    相比较于QueryTask,FindTask和IdentifyTask支持多个图层查询.FindTask支持属性查询,IdentifyTask支持图形查询. 1.FindTask FindTask通过 ...

  3. 分享Silverlight/WPF/Windows Phone一周学习导读(10月30日-11月6日)

    分享Silverlight/WPF/Windows Phone一周学习导读(10月30日-11月6日) 本周Silverlight学习资源更新 Silverlight 定位 niejunhua [学习 ...

  4. activiti自己定义流程之Spring整合activiti-modeler实例(七):任务列表展示

    1.通过上一节的操作,能够知道流程启动以后会同一时候生成一个流程实例和用户任务.这个用户任务保存在act_ru_task和act_hi_task表中,从表明能够看出ru是runtime,hi是hist ...

  5. ArcGIS中的三种查询

    ArcGIS runtime SDK for WPF/Silverlight中的三种常用的查询:QueryTask.FindTask.IdentifyTask都是继承自ESRI.ArcGIS.Clie ...

  6. 深入浅出 Javascript API(五)--Query Find 查询

    作者:Flyingis 本文严禁擅自转载或用于商业目的,如有需要请事先联系作者:dev.vip#gmail.com 查询是webgis常用功能之一,基于地图的查询经历了多种形式的演变,现在用什么形式来 ...

  7. Quartz实现动态定时任务

    一. 说明 由于最近工作要实现定时任务的执行,而且要求定时周期是不固定的,所以就用到了quartz来实现这个功能: spring3.1以下的版本必须使用quartz1.x系列,3.1以上的版本才支持q ...

  8. raid重构原理_5个重构原理示例

    raid重构原理 这篇文章介绍了重构真正的开源代码( Gradle Modules Plugin )时应用的五​​种(最著名的)重构原理. 语境 当我为Gradle Modules Plugin (P ...

  9. Spark源码分析 -- SchedulableBuilder

    SchedulableBuilder就是对Scheduleable tree的封装, 在Pool层面(中间节点), 完成对TaskSet的调度(FIFO, FAIR) 在TaskSetManager ...

  10. 《ArcGIS Runtime SDK for .NET开发笔记》--三维功能

    介绍 在ArcGIS Runtim SDK for .NET 10.2.6中,新添加了三维地图功能.在ArcGIS中,我们将三维地图称为Scene(场景),所以在Runtime SDK SDK for ...

最新文章

  1. python代码查询_python 查询代码量
  2. Maximal Rectangle
  3. 这是一则计算机视觉顶级会议CVPR与腾讯的爆闻,啥?
  4. android 创建文件夹_Android 动画小记
  5. C# string转double,double转string
  6. vue项目dist编译文件部署到服务器:页面空白、F5刷新报错404、403报错、等等bug - 总结篇
  7. Layer:layui.util.timeAgo 使用
  8. QPushButton中clicked消息参数一直返回false问题解决方法
  9. 【gloomyfish】数据分析之 – 离群值(Outliers) BoxPlot
  10. el-dialog修改弹框到顶部的高度margin-top
  11. linux解压文件到一个新的文件夹下面
  12. 计算机毕业设计 SSMKTV点歌系统 音创ktv点歌系统 卡拉ok点歌系统Java Vue MySQL数据库 远程调试 代码讲解
  13. codeformatter的格式化文件
  14. 快速入门EasyX图形编程
  15. oralc clob 解析内容
  16. 星淘惠:做跨境电商为什么要选择亚马逊?
  17. 自助建站系统有什么好处?
  18. Word VBA自动排版(6)- 专利撰写生成权利要求模板
  19. 服务器压力测试之JMeter篇(一)
  20. win10和android手机日历事件的同步(华为手机)

热门文章

  1. IntelliJ IDEA多屏后窗口不显示问题解决(用工具一键解决)
  2. BZOJ3757: 苹果树【树上莫队】
  3. ABAP术语-Update Task
  4. 集合的洗牌,排序,拆分以及常用遍历方法
  5. 指尖下的js —— 多触式web前端开发之三:处理复杂手势
  6. 再次翻看WCF的书籍
  7. R与Python手牵手:多格式文件导入与爬虫
  8. 神技能!在上司靠近座位时,用人脸识别技术及时屏幕切换
  9. ORA-28002 the password will expire
  10. SpringBoot缓存技术