我修复了这个错误,之前问题的根源是'stage'无法访问我放置代码的地方(不在root中).我删除了它并且它运行正常,但是他们被附着的事件监听器不再工作了.我需要这些事件监听器但是当我尝试放置'阶段'时.面对它不会工作.救命?
这就是我工作时所拥有的(当这个文件仍然是根目录时):
stage.addEventListener(KeyboardEvent.KEY_DOWN, keypressed);
stage.addEventListener(KeyboardEvent.KEY_UP, keyreleased);
Run Code Online (Sandbox Code Playgroud)
现在我的代码就是这个,它运行,只是没有事件监听器工作:
addEventListener(KeyboardEvent.KEY_DOWN, keypressed);
addEventListener(KeyboardEvent.KEY_UP, keyreleased);
Run Code Online (Sandbox Code Playgroud)
的stage
属性是null
,直到元件被添加到舞台.所以你应该首先听一下这个事件Event.ADDED_TO_STAGE
,当你收到它时,你可以添加你的其他事件监听器:
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
function addedTostage():void
{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
stage.addEventListener(KeyboardEvent.KEY_DOWN, keypressed);
stage.addEventListener(KeyboardEvent.KEY_UP, keyreleased);
}
Run Code Online (Sandbox Code Playgroud)