1

以下のコードは、「circle」という名前の MovieClip を作成し、存在するかどうかを確認し、removeChild(); を介して削除します。円は削除されましたが、[オブジェクト MovieClip] はまだ残っています。

子供が「ステージ上」にいるか、removeChild を使用して削除されているかを確認するにはどうすればよいですか?

import flash.display.MovieClip;
import flash.events.MouseEvent;

var circle:MovieClip  = new MovieClip();
circle.graphics.beginFill(0xFF794B);
circle.graphics.drawCircle(50, 50, 30);
circle.graphics.endFill();
addChild(circle);
circle.addEventListener(MouseEvent.CLICK, test);

function test(event:MouseEvent)
{
    trace(circle);
    if(circle)
    {
     trace("Called if Circle");
     removeChild(circle);
    }
    trace(circle);
}
4

2 に答える 2

4

containsおそらく、DisplayObjectの関数を使用したいと思うでしょう。

if (contains(circle))
{
    // The circle is contained by the current clip
    removeChild( circle );
    // Remove the reference to the clip 
    // (optional, if you don't want to use the circle again)
    circle = null; 
}
于 2013-05-15T09:04:26.760 に答える