actionscript-3 - 简单着色书: Error #1009: Cannot access a property or method of a null object reference

标签 actionscript-3 error-handling

我正在创建一本简单的Flash图画书,并且对as3编程语言不是很熟悉。

我输入了以下代码,当我尝试按测试影片中的“后退”按钮时,出现了该错误。

stop();

back_btn.addEventListener(MouseEvent.CLICK, GoToChooseA);

function GoToChooseA(event:MouseEvent):void
{
    gotoAndStop("Choose");

}

color_scroll.mask = myMask;
var goY: Number = color_scroll.y;
stage.addEventListener(Event.ENTER_FRAME, scrollManage);

function scrollManage(Event): void {
    color_scroll.y += (goY - color_scroll.y) / 20;
}

up_btn.addEventListener(MouseEvent.MOUSE_DOWN, scrollUP);
down_btn.addEventListener(MouseEvent.MOUSE_DOWN, scrollDown);
function scrollUP(MouseEvent): void {
    goY += 20;
}
function scrollDown(MouseEvent): void {
    goY -= 20;
}

*
似乎表明错误在这里
color_scroll.y += (goY - color_scroll.y) / 20;

但是我真的很沮丧,因为我不确定如何从那里开始。

最佳答案

每当您将gotoAndStop()编码到另一个关键帧时,您当前的帧就会失效,并且其所有成员都将被销毁。如果侦听器附加到持久对象,则它们将持久存在。因此,在调用GoToChooseA()之后,销毁了color_scroll,然后调用了附加到stage的侦听器并尝试修改销毁的对象,然后执行1009。解决方案是手动删除事件侦听器“scrollManage”,“scrollUp” ”,“scrollDown”,更改框架之前,至少是“scrollManage”(因为它已附加到舞台上),或者完全停止使用框架,但是即使如此,您也必须控制事件监听器。

关于actionscript-3 - 简单着色书: Error #1009: Cannot access a property or method of a null object reference,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38387682/

相关文章:

javascript - 如何将 replace() javascript regex 函数转换为 actionscript?

flash - 在没有流媒体服务器的情况下在 Flash 中录制 h.264 视频?

javascript - 如何在react admin中获取错误HTTP状态代码

c# - ASP.NET MVC3中不同区域的自定义错误页面

actionscript-3 - 套接字策略文件服务器和AIR3.0

android - 将 Camera 类与 Flex Mobile Framework 和 Android 一起使用

flash - 救命! Actionscript中令人困惑的语法错误1084,要求使用分号?

time - 查看大小写错误的数据时,Vue.js 会引发错误

Android WebView 内存不足?

javascript - 将异步函数作为回调传递会导致错误堆栈跟踪丢失