亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

用trace函數實現互動地圖后臺快速標注地名

系統 2175 0

在上一講中我們介紹了通過調用外部XML文件實現了地名的顯示。在這一講中,我們講解如何通過Flash ActionScript代碼的trace函數實現互動地圖后臺快速標注地名的工作。
   [1b]了解trace函數[/1b]
   首先我們了解一下trace函數;
   我們可以使用 Flash 調試播放器捕獲來自 trace() 函數的輸出并顯示結果。在測試 SWF 文件時,使用此語句可在"輸出"面板中記錄編程注釋或顯示消息。使用 expression 參數可以檢查是否存在某種條件,或在"輸出"面板中顯示值。trace() 語句類似于 JavaScript 中的 alert 函數。可以使用"發布設置"對話框中的"省略跟蹤動作"命令將 trace() 動作從導出的 SWF 文件中刪除。
   需要重點提示的是trace()函數只能在“調試播放器”中生效;而在正式發布后,在Flash Player或是Html文件中運行的 SWF 文件是無法顯示輸出結果的;因此,這只是一個對地圖開發者有效的后臺操作的方法。
[1b]  制作步驟:[/1b]
[1b]  1、創建標注按鈕及對話窗口
[/1b][1b]
   [/1b]首先我們要創建一個“標注”的按鈕元件,一個名為“input_mc”的影片剪輯作為對話窗口,以及一個名為“input_txt”的動態文本框用以手動輸入地名名稱;如圖1所示:

圖1 創建標注對話窗口
[1b]  2、編寫相關的ActionScript代碼[/1b]
   打開“標注”按鈕的動作面板,輸入以下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 軸坐標  }
}
   [1b]注:[/1b]上述代碼中捕捉鼠標指針的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; //圓點坐標與捕捉點重合
本文轉自:http://www.5uflash.com/flashjiaocheng/Flashyingyongkaifa/873.html

用trace函數實現互動地圖后臺快速標注地名


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 在线看欧美三级中文经典 | 亚洲性一级理论片在线观看 | 久久99亚洲精品久久久久 | 久久99精品久久久久久青青日本 | 久久99精品视免费看 | 成人国产精品视频频 | 青青青国产在线手机免费观看 | 伊人久久精品亚洲精品一区 | 国产成版人视频网站免费下 | 一级午夜a毛片免费视频 | 亚洲精品另类 | 99视频精品全部免费免费观 | 97色精品视频在线观看免费 | 久久91视频 | 国产福利午夜波多野结衣 | 久久99精品福利久久久 | 国产午夜精品一区二区三区嫩草 | 色涩网站在线观看 | 韩国欧美一级毛片免费 | 在线精品国精品国产不卡 | 狠狠干艹 | 免费视频爱爱太爽在线观看 | 亚洲精品亚洲人成毛片不卡 | 精品国产91久久久久久久a | 日日日日操 | 最新日本免费一区二区三区中文 | 精品伊人网| 不卡国产 | 视频在线日韩 | 四虎4hu永久免费 | 久久666 | 亚洲精品国产啊女成拍色拍 | 国产成人精视频在线观看免费 | 欧美洲久久日韩欧美 | 久久一二 | 99av在线播放| 四虎国产精品永久地址51 | 天天摸天天舔天天操 | 国产精品福利资源在线 | 国产一级免费 | 国产大尺度福利视频在线观看 |