我得到一个“TypeError:错误#1009:无法访问空对象引用的属性或方法。”我的AIR项目使用按钮时出错。

时间:2010-12-29 01:54:30

标签: flash actionscript-3 actionscript air adobe

所以我的问题是,我正在开发我的Adobe Air项目,因此我决定编写一些按钮以便能够导航。这里的问题是我尝试这样做时出错。这是我的代码。

import flash.events.MouseEvent;

this.stop();
play_btn.addEventListener(MouseEvent.MOUSE_DOWN, playButtonClick);

function playButtonClick(evt:MouseEvent) {
    gotoAndPlay(337);
}

我实际上看不出有什么问题,我在一个空白的非AIR文件上尝试了这个,并且效果很好。谢谢你的帮助!

2 个答案:

答案 0 :(得分:0)

如果没有正确的上下文,很难说,但是1009错误意味着您正在尝试访问一个空的对象。

从你发布的那个非常小的片段中,play_btn为null或者如wwwOzOk所说,帧337不会退出(虽然我不确定尝试移动到不存在的帧将通过1009)。

HTH

Ĵ

答案 1 :(得分:0)

试试这个:

this.stop(); 

trace("Instance of play_btn: " +play_btn);

play_btn.addEventListener(MouseEvent.MOUSE_DOWN, playButtonClick);
function playButtonClick(evt:MouseEvent) 
{ 
    gotoAndPlay(337); 
}

如果你得到一个<< null>>跟踪中的值然后这意味着您的按钮未在此帧实例化。确保在尝试访问该按钮之前创建该按钮;)