removeChild используется неправильно? - PullRequest
0 голосов
/ 17 октября 2011

Я просто пытаюсь удалить видеоклип со сцены при двойном щелчке

package  {
    import flash.display.MovieClip;
    import flash.events.MouseEvent;
    import fl.motion.MotionEvent;

    public class Main extends MovieClip{

        var thingeh:Things;

        public function Main() {
            thingeh = new Things;
            stage.addEventListener(MouseEvent.CLICK, onClick);
            stage.addEventListener(MouseEvent.DOUBLE_CLICK, onDouble);

        }

        public function onClick(event:MouseEvent)
        {
            addChild(thingeh);

        }
        public function onDouble(event:MouseEvent)
        {
            if(thingeh)
            removeChild(thingeh);

        }
    }

}

1 Ответ

0 голосов
/ 19 октября 2011
public function onDouble(event:MouseEvent)
{
    if( thingeh && contains(thingeh) )
    {
        removeChild(thingeh);
    }
}

Кроме того, вы можете захотеть doubleClickEnabled = true в вашем конструкторе.

Заметьте, MouseEvent.CLICK запускается ДВАЖДЫ вместе с событием MouseEvent.DOUBLE_CLICK.

...