作者mygod0520 (省了金钱却浪费时间...)
看板Flash
标题[问题] AS3.0如何用array同时建立多个可分开移动物件?
时间Tue Jan 4 21:29:55 2011
以下是我的程式码部分
目前用Array抓到符合条件的会建立一个物件在场上
可是应该是因为共用一个ObjSprite的关系
导致其中移动一个就会所有物件一起移动
不知道要怎样改能够让不同物件分开移动~
还有假设可以分开移动後
我如果要记录目前移动的物件名字
要在EventListener中如何将目前移动的物件给另外一个String变数呢QQ
不好意思> < 新手问题多多QQ
var ObjSprite:Sprite = new Sprite();
for(var i:int=0; i<ObjArea.length; i++)
{
if(ObjArea[i] == SceneName)
{
var ObjPicLoader:Loader = new Loader;
addChild(ObjSprite);
var ObjPicRequest:URLRequest = new URLRequest(ObjPicLocation[i]);
addChild(ObjPicLoader);
ObjPicLoader.load(ObjPicRequest);
ObjSprite.addChild(ObjPicLoader);
ObjSprite.name = ObjName[i];
ObjPicLoader.x = ObjX[i];
ObjPicLoader.y = ObjY[i];
trace(ObjName[i]+","+ObjX[i]+","+ObjY[i]+"!!");
ObjSprite.addEventListener(MouseEvent.MOUSE_DOWN,drag_loadObjectPic);
ObjSprite.addEventListener(MouseEvent.MOUSE_UP,stopdrag_loadObjectPic);
}
}
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.135.11.60
1F:推 scars:不太懂共用ObjSprite的用意 为何不把他new在if下面呢 01/04 21:35
2F:→ mygod0520:我new在if底下得好像会以最後一笔作为移动物件...QQ 01/04 21:39
3F:推 scars:看起来是你drag_跟stopdrag_的两个函数操作对象错误啊 01/04 21:40
4F:→ scars:你在里面直接ObjSprite.startDrag()了吧 01/04 21:41
5F:→ scars:改成Sprite(event.currentTarget).startDrag() 01/04 21:42
6F:→ mygod0520:!!目前看来好像可以了~我再试试看^^ 感谢s大大!! 01/04 21:49