设置地图控件的crosshair样式 彻底删除Esri的logo

本文介绍如何使用Flex自定义ArcGIS地图控件的样式,包括十字丝样式调整及去除Esri标志,通过代码示例展示了具体实现过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

<?xml version="1.0" encoding="utf-8"?>
<!--  设置地图控件的crosshair样式;  彻底删除Esri的logo  -->
<!-- Copyright (c) 2010-2011 《ArcGIS Server开发指南——基于Flex和.NET》练习代码
完整的代码工程可以从 http://www.geocommon.net 下载  -->
<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="655" minHeight="500" 
  xmlns:esri="http://www.esri.com/2008/ags">
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>

<esri:Map id="map" openHandCursorVisible="true" panDuration="6000"  
 load="loaded();" crosshairVisible="true" logoVisible="false">
<esri:ArcGISDynamicMapServiceLayer 
url="http://localhost/ArcGIS/rest/services/Florida/MapServer" />
</esri:Map>
<fx:Script>
<![CDATA[
import com.esri.ags.events.ZoomEvent;

import mx.controls.Alert;
import mx.core.UIComponent;

private function loaded():void
{
map.setStyle("crosshairLength",15);
map.setStyle("crosshairWidth",1);
map.setStyle("crosshairColor",0xff0000);
map.setStyle("crosshairAlpha",0.8);
}

private function RemoveLogo():void
{
for(var i:Number=0; i<map.numChildren;i++)
{
var component:UIComponent = map.getChildAt(i) as UIComponent;

if(component != null)
{
if(component.className == "StaticLayer")
{
for(var j : int = 0 ; j < component.numChildren ; j++){
var stComponent : UIComponent = component.getChildAt(j) as UIComponent;
if(stComponent.className == "Image"){
stComponent.visible = false;
return;
}
}
}
}
}
}
]]>
</fx:Script>
</s:Application>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值