好吧,通過正確刪除我的意思是我實際上擺脫了實例,還是隻是沒有被繪製了?我應該提到,我試圖從自己的類中刪除實例,也就是刪除它自己。它「起作用」,因爲它所畫的正方形不再出現在屏幕上,但我不確定它是否真的已經消失或者沒有被繪製。反正這裏的類:Actionscript:我是否正確刪除這個類實例?
package
{
import flash.display.*;
import flash.events.*;
public class OBJECT_bullet_1 extends Sprite
{
public var X:int = 0; public var Y:int = 0;
public var Y_SPEED:int = 5;
public var DEPTH:int = 9;
public var CONTAINER:Sprite = new Sprite();
public function CREATE(CONTAINER:Sprite,X:int,Y:int):void
{
this.CONTAINER = CONTAINER;
CONTAINER.stage.addEventListener(Event.ENTER_FRAME,STEP);
this.X = X; this.Y = Y;
DRAW();
}
public function STEP(event:Event):void
{
this.graphics.clear();
Y -= Y_SPEED;
if (Y < 20) {Y = 300; CONTAINER.removeChild(this); CONTAINER.stage.removeEventListener(Event.ENTER_FRAME,STEP); CONTAINER.(delete this); CONTAINER = null; return;}
DRAW();
}
public function DRAW():void
{
this.graphics.beginFill(0xCCCC00,1);
this.graphics.drawRect(X - 2,Y - 2,4,4);
this.graphics.endFill();
CONTAINER.addChild(this);
}
}
}
我關心的是在STEP功能時,它會檢查如果Y < 20.你會發現,它確實幾件事情後記部分。我是否正確刪除它?如果有,我正在做什麼來刪除它,我不需要?
你超出了必要的範圍;但是,你對if語句進行格式化的方式讓我想要打個小寶寶。 – Aaron 2010-08-17 03:13:21