Actionscript 3 AS3处出现错误1180

Actionscript 3 AS3处出现错误1180,actionscript-3,flash-cs5,Actionscript 3,Flash Cs5,我正在flash cs5上构建一个游戏。我正在制作开始屏幕,现在我尝试加载游戏,但在我的play game功能中出现错误1180。下面是它的工作原理 这是我在this.stageRef行得到错误的函数。这个类是我的主菜单,它扩展了基本菜单 private function playGame(e:MouseEvent) : void { unload(); this.stageRef.dispatchEvent(new Event("gameSTART"))

我正在flash cs5上构建一个游戏。我正在制作开始屏幕,现在我尝试加载游戏,但在我的play game功能中出现错误1180。下面是它的工作原理

这是我在this.stageRef行得到错误的函数。这个类是我的主菜单,它扩展了基本菜单

private function playGame(e:MouseEvent) : void
    {
        unload();
        this.stageRef.dispatchEvent(new Event("gameSTART"));
    }
这是我的引擎功能

public function Engine() 
    {
        preloader = new ThePreloader(474, this.loaderInfo);
        stage.addChild(preloader);
        preloader.addEventListener("loadComplete", loadAssets);
        preloader.addEventListener("preloaderFinished", showMenu);
        stage.addEventListener("gameSTART", fGameStart);
    }

    private function fGameStart(e:Event):void 
            {

                     .......... here is all my game code
            }

看起来,您的stageRef不是合适的EventDispatcher对象。您可能有另一个自定义阶段类,或者当您使用阶段对象获取阶段属性时,此属性的所有者还不在阶段上。所以,尝试在Event.ADDED_到源对象的_stage事件之后获取stage属性。或者在获得Stage的位置显示代码并传递到主菜单。

使stageRef类实现IEventDispatcher

您提供的代码实际上没有帮助。我想
stageRef
在你称之为playGame时是空的,但是如果没有相关的代码,它就不会更有帮助了。你是说那部分吗`公共函数主菜单(stageRef:Stage=null){this.stageRef=stageRef;btnPlay.addEventListener(MouseEvent.MOUSE_DOWN,playGame,false,0,true);btnCredits.addEventListener(MouseEvent.MOUSE_DOWN,credits,false,0,true);}`我不知道如何使它位于代码块中。