作者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
→ Angelliya:因為兩個mc是不同的東西 03/06 01:40
推 pepsitetsu:不用removeChild 在beginFill前一行加graphics.clear() 03/06 04:04
→ pepsitetsu:我好像搞錯問題了 03/06 04:04
推 hendrixwu:new mc:mcBall = new mcBall(); 在library做一個mcBall 03/07 01:09
→ hendrixwu:mc.name = 'ball';remove(getChildByName('ball')); 03/07 01:11
→ hendrixwu:removeChild(getChildByname('ball)); 03/07 01:12