我的时间轴第2帧上有一个对象(按钮),名称为btnMenu。单击时,我想返回时间轴中的第1帧。 Actionscript 3不允许我将eventlistener绑定到第1帧的代码中的按钮。
布局:
第1层:动作,仅限第1帧 第2层:btnMenu,仅在第2帧(前面有一个空框)
代码:
stop(); // don't automatically go to frame 2
btnMenu.addEventListener(MouseEvent.CLICK, function() { gotoAndStop(1); }
(其他代码显然要转到第2帧)
我得到的错误是“找不到对象的方法/属性为null”(粗略翻译)。
请帮帮忙?
答案 0 :(得分:0)
您只能访问代码所在的同一帧上的对象。你有几种方法来解决这个问题。取决于您希望如何构建应用程序。
您可以将所有按钮移动到拥有代码的框架,将其可见性切换为false,一旦到达按钮应该可见的框架,只需将其设置为true。
其他方法是将addEventListener代码移动到按钮的同一帧。您仍然可以在第一帧中访问您的代码,并在需要时调用函数。
请考虑以下事项:
// code in first frame
stop();
function goto(evt:MouseEvent):void {
gotoAndStop(1);
}
// code in button frame
stop();
btnMenu.addEventListener(MouseEvent.CLICK, goto);