Actionscript removeChild使用不正确?
我只是想在双击后从舞台上删除一个电影剪辑Actionscript removeChild使用不正确?,actionscript,removechild,Actionscript,Removechild,我只是想在双击后从舞台上删除一个电影剪辑 package { import flash.display.MovieClip; import flash.events.MouseEvent; import fl.motion.MotionEvent; public class Main extends MovieClip{ var thingeh:Things; public function Main() {
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);
}
}
}
此外,您可能希望构造函数中的doubleClickEnabled=true
请注意,
MouseEvent.CLICK
会与MouseEvent.DOUBLE\u CLICK
事件一起被触发两次。首先,我发现removeChild没有任何问题。你的错误是什么。当removeChild完成时,您应该移除EventListener,或者使用弱事件侦听器。我发现使用MouseeEvent.双击会出现问题,请使用另一个事件(如MouseeEvent.MOUSE\u UP)进行测试
public function onDouble(event:MouseEvent)
{
if( thingeh && contains(thingeh) )
{
removeChild(thingeh);
}
}