作者godsing (执着是苦)
看板Flash
标题[问题] 关於 new MovieClip()的消除方法几问
时间Sat Mar 6 01:02:14 2010
小弟尝试以AS 3.0去写
var mc:MovieClip = new MovieClip();
var i,xp,yp:Number;
function water_balls(j:Number):void{
for(i=0;i<j;i++){
xp=int (1+50*Math.random());
yp=int (35+15*Math.random());
mc.graphics.beginFill(0x00ffff);
mc.graphics.drawCircle(xp, yp, 1);
addChild(mc);
}
}
water_balls(15);
造出几多水球,在下一frame里又立刻以removeChild(mc); 删除
以制造一瞬间的水滴
我的问题是如果把希望把var mc:MovieClip = new MovieClip();
写进去function中,但是这样会造成下一frame的removeChild(mc);发生未定义mc的错误
是不是var mc:MovieClip = new MovieClip();本来就不允许写在function中?
还是说有其他的办法可以去移除function产生的mc??
感谢解答!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.173.133.149
1F:→ Angelliya:因为两个mc是不同的东西 03/06 01:40
2F:推 pepsitetsu:不用removeChild 在beginFill前一行加graphics.clear() 03/06 04:04
3F:→ pepsitetsu:我好像搞错问题了 03/06 04:04
4F:推 hendrixwu:new mc:mcBall = new mcBall(); 在library做一个mcBall 03/07 01:09
5F:→ hendrixwu:mc.name = 'ball';remove(getChildByName('ball')); 03/07 01:11
6F:→ hendrixwu:removeChild(getChildByname('ball)); 03/07 01:12