作者tony42035 (ACE)
看板Programming
标题[问题] Flash AS3.0 影片片段阵列的问题
时间Sun Oct 24 20:09:03 2010
第一次在这发文,如果有问题我会尽快修改
先谢谢各位耐心看我的问题
我现在做的这个主要是由外部(资料库提供的路径)载入图片进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