[問題] Flash AS3.0 影片片段陣列的問題
第一次在這發文,如果有問題我會盡快修改
先謝謝各位耐心看我的問題
我現在做的這個主要是由外部(資料庫提供的路徑)載入圖片進FLASH
載入後我將圖片(loader)用迴圈的方式
指定到一個影片片段的陣列裡面(影片片段才可以Drag)
接著使用者可以進行拖拉,擺放位置確定後我再將影片片段的XY座標存回資料庫
不知道我這樣講會不會很籠統
不過以上講的功能我都做完了
我現在的問題是
因為現在影片片段是一個陣列 mc[]
所以我每次要監聽畫面上每一個mc的時候
都要用for迴圈去跑
for (i=0 ; i<mc數目 ; i++)
{
mc[i].addEventListener(MouseEvent.MOUSE_DOWN, drag);
}
而在drag()裡
我可以很輕易的用
function drag (ev:MouseEvent):void
{
var mc = ev.currentTarget;
mc.startDrag();
}
這種方法知道我目前滑鼠觸發的是mc陣列裡的哪一個
但我沒有辦法在drag()裡,滑鼠觸發後
知道我滑鼠觸發所對應到的是影片片段陣列的
哪一個元素值 ex:0,1,2,3...
或是
實體名稱 ex: mc[1],mc[2],mc[3]....
我試過使用trace(ev.curruentTarget.name)
但出來的都是 (instance+數字) 這種實體名稱 ex:instance19,instance16
我會有這樣的需求是因為
我有另一個陣列是存放資料,他的排列跟mc陣列排列的順序是一樣的
所以當我mc陣列裡的值有修改的時候(ex:x,y 座標)
我另一個陣列同一個元素值的資料也必須跟著修改
或是當我做觸發的時候,我會從另一個陣列的同一個元素值裡讀出資料
我目前就卡在這邊
不知道是不是我google不到其實有函式可以使用
還是我根本的想法都錯了,其實有更簡單的方式
或是這種方式根本不可行呢??
P.S
爆肝寫了好多天程式
精神恍恍惚惚
如果有表達不清楚的地方麻煩提出喔!! 謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 111.251.207.224