[英]actionscript 3 how to use getChildByName for button (not MovieClip)
好的,所以我有一个名为sClose的按钮(不是影片剪辑)。 我还有一个名为s的按钮和一个名为sMC的动画片段。 基本上,所有内容都在同一帧上。 该代码通过使sMC隐藏和sClose隐藏开始。 现在,当您单击s时,将显示sMC和sClose。 SMC是一个屏幕,而sClose只是一个关闭按钮,如果您单击它,则它会隐藏自身并隐藏sMC。 因此,基本上,如果单击了sCLose,它将带您回到原始屏幕。 这是动作脚本3 cpde。
sMC.visible=false;
sCLose.visible=false;
s.addEventListener(MouseEvent.CLICK, clickHandler);
function clickHandler(event:MouseEvent):void {
var focus;
var cB;
focus = MovieCLip(getChildByName(event.target.name + "MC"));
cB = Button(getChildByName(event.target.name + "Close"));
focus.visible=true;
cB.visible=true;
当我运行代码时,MovieClip(getChildByName)行没有错误,但是,Button(getChildByName)行却给出了错误。 它说:“调用可能未定义的方法Button。” 为什么这样说呢?
您实际上不需要将其强制转换为DisplayObject以外的任何对象。 您不使用Button的任何属性,因此如果您编写
cB = DisplayObject(getChildByName(event.target.name + "Close"));
cB.visible=true;
它应该工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.