Flash 如何从子movieclip ain actionscript 3中删除父movieclip?
下面显示了如何在movieclip中添加子项。Flash 如何从子movieclip ain actionscript 3中删除父movieclip?,flash,actionscript-3,actionscript,Flash,Actionscript 3,Actionscript,下面显示了如何在movieclip中添加子项。 ebd.target.addChild(信息加总) movieclipinfo\u grd中有一个名为my\u btn的按钮。我想删除movieclipinfo\u grd。父项的代码类似于: delete_btn.addEventListener(MouseEvent.CLICK , del); function del(e:MouseEvent) { this.parent.removeChildAt(0); } 我在这里做的是从库
ebd.target.addChild(信息加总)
movieclip
info\u grd
中有一个名为my\u btn
的按钮。我想删除movieclipinfo\u grd。父项的代码类似于:
delete_btn.addEventListener(MouseEvent.CLICK , del);
function del(e:MouseEvent)
{
this.parent.removeChildAt(0);
}
我在这里做的是从库中添加一个电影剪辑并向其中添加一个子剪辑,当我单击“删除”时,它将删除父剪辑
var mm:mm1 = new mm1();
//Adding it to stage
addChild(mm);
var m2:mm2 = new mm2();
//adding the child to mm
mm.addChild(m2);
阿米尔的代码假定只有一个子项,因此在添加更多子项时将无法工作
此代码将执行正确的行为:
deleteButton.addEventListener(MouseEvent.CLICK , removeFromParent);
function removeFromParent(event:MouseEvent)
{
var child:DisplayObject = event.currentTarget as DisplayObject;
var parent:DisplayObjectContainer = child.parent;
parent.removeChild(child);
}
this.parent.removeChildAt(0)代码>在大括号中,我们输入了movieclip级别,对吗?您在这里也可以看到很好的示例:它不起作用..我已经尝试了event.target.parent.parent.removeChild(event.target.parent.parent)
。或者有没有什么方便的方法不用event.target
处理鼠标事件时,大多数时候都不是您所期望的。另外,您试图从自身删除一个项目,这是不合逻辑的。我相信您的代码假定deleteButton是MovieClip@Akhil试图删除的项目。但我相信他们正在试图删除info\u grd的父项。@Akhil您应该进行一些检查,看看父项是否确实存在,但尝试类似于event.currentTarget.parent.parent.removeChild(event.currentTarget.parent)的操作;