客服QQ:250304218 9459803 维修网站群:中华维修网 | 维修资料下载 | 中华维修论坛
新闻资讯 网络学院 电脑维修 办公维修 家电维修 维修视频 维修资料 中维商城 维修论坛
业界硬件办公家电数码
操作系统安全技术软件应用媒体动画图形图像办公系列网络应用
维修基础软件专题CPU/内存故障硬盘专栏显示器鼠标键盘电源/主板故障声卡显卡光储设备网络设备笔记本
导购DIY专区硒鼓加粉打印机复印机传真机 扫描仪一体机
电视维修影音设备家电常识综合电器
  您现在的位置: 中华维修网 >> 网络学院 >> 软件应用 >> 正文
用trace函数实现互动地图后台快速标注地名
作者:佚名 文章来源:本站原创 点击数: 更新时间:2006-12-14 10:03:09

2、编写相关的ActionScript代码

   打开“标注”按钮的动作面板,输入以下ActionScript代码:

on (release) {             //鼠标释放时触发
  input_mc._visible = 1;   //开启标注的对话窗口
}


   打开“拾取标注点”按钮的动作面板,输入以下ActionScript代码:

on (release) {             //鼠标释放时触发
 _root.map_mc.onMouseDown = function () { //当鼠标按下时触发事件    var inputX = _xmouse; //用变量inputX 记录下当前鼠标指针的 X 轴坐标
   var inputY = _ymouse; //用变量inputY记录下当前鼠标指针的 Y 轴坐标  }

}


   注:上述代码中捕捉鼠标指针的XY坐标值只是示意性的,事实上在实用的地图中远远没有这么简单;因为我们通常是在指定的地点上标注地名名称,因而需要对地图进行缩放、移动等操作;而单纯用_xmouse和_ymouse是无法捕捉正确的坐标值,必须依靠_xscale、_yscale、_width、_hight、_x、_y等属性值去纠正因操作地图产生的偏差。而相关的公式因不同的地图结构各不相同,无法在本例中给出通用的代码。以下是笔者在制作深圳地图时使用的相关捕捉点的公式,仅能作概念性的参考;

_global.bzX = Math.round(15868.48*(_root._xmouse-_root.map_mc._x+825*_root.map_mc._xscale/100)/_root.map_mc._xscale);

//捕捉X轴坐标


_global.bzY = Math.round(15868.48*(_root._ymouse-_root.map_mc._y+426*_root.map_mc._xscale/100)/_root.map_mc._xscale);

//捕捉Y轴坐标


   而在捕捉到指针坐标的同时还可以直接在地图上显示一个标记,可以加入以下代码,用一个红色的圆点表示:

_root.map_mc.createEmptyMovieClip("dzpot_mc", this.getNextHighestDepth());         //画一个圆点
_root.map_mc.dzpot_mc.lineStyle(2, 0xff0000, 100);   //圆点为红色,粗细磅值为2
_root.map_mc.dzpot_mc.moveTo(0, 0);
_root.map_mc.dzpot_mc.lineTo(0, 0.1);
_root.map_mc.dzpot_mc._width = _root.map_mc.dzpot_mc._height = 1000/_root.map_mc._xscale;         //调整圆点的大小
_root.map_mc.dzpot_mc._x = _root.map_mc._xmouse; //圆点坐标与捕捉点重合
_root.map_mc.dzpot_mc._y = _root.map_mc._ymouse; //圆点坐标与捕捉点重合


   打开“完成”按钮的动作面板,输入以下ActionScript代码:

on (release) {             //鼠标释放时触发
 var inputName = input_txt.text //用变量inputName记录下输入的地名名称
 race("<r><n>"+inputName+"</n><x>"+inputX+"</x><y>"+inputY+"</y></r>"+/n);
 //在输出面板中显示XML文件格式的代码
}


   3、在调试播放器中标注地名:

   点击菜单“发布预览”/“Flash”,打开调试播放器,在其中进行标注,如图2所示;

图2 在调试播放器中的进行标注

   如此反复操作,在输出面板中会持续地输出相应的XML文件代码,如图3所示;

图3 在调试播放器中的输出面板中显示输出结果

   注:由于本例只能在调试播放器中生效,因此在网页中无法演示。依照本例的方法,地图的开发者可以在后台迅速地标注地名。但是这往往只限于通用的路名或是地名,而对于大量的公司、商辅等地名信息,开发者却无法进行海量标注,必须通过其它途径由客户端的操作者自行进行在线标注。这样就必须借助数据库和ASP等协助实现,在下一讲中,我们将学习Flash+XML+ASP实现客户端的在线地名标注功能

上一页  [1] [2] 

 主板维修教材  笔记本维修视频教程  硬盘维修视频教程  芯片级焊接教学视频   电路基础教程   维修工具 
文章录入:91xiukf    责任编辑:91xiu客服 
【字体:
最近更新
· ASP错误代码说明
· ASP错误代码说明
· 关于Adodb.Stream 的使用说明
· 关于Adodb.Stream 的使用说明
· 解决IIS5 HTTP500内部错误
· asp控制xml数据库的6段非常的经典代码
· ASP技术与PHP,CGI,JSP等技术的比较
· 用ASP制作饼图、柱状图等
· FlashMX新特性详解(四)学习资源和软件
· 导入电影的控制
推荐文章
· Windows XP系统被远程入侵
· 在网吧QQ密码被盗
· 浏览一些网页后硬盘被完全共享
· 共享文件后经常死机
· IE无法打开网页
· 病毒导致鼠标不能正常工作
· 病毒导致花屏
· 在Java中获取系统属性
· JAVA MSN机器人主要代码开放
· 计算机等级考试三级网络技术复习提纲
关于中维 | 联系方法 | 付款方式 | 广告服务 | 加入我们 | 帮助中心 | 网站地图 | 友情合作 | 加入收藏 | 设为首页
Copyright (C) 1999-2006 91Xiu.Com, All Rights Reserved 版权所有 中华维修网
全国统一客服热线: 400-658-3058 未开通400地区请拨打0536-3289280 13306362398
客服QQ:250304218 9459803 
 
青州众维科技 版权所有    鲁ICP备05001127号