0

startFunction 有一个任务调用 doFunction 3 秒,然后停止。不幸的是,如果没有任何编译器错误,这是行不通的。只是空白输出。可能是一些简单的错误,但我是初学者,几个小时后找不到解决方案。我已经剪切了代码以使其更清晰,但如果需要可以粘贴。

    package  {
        //all imports

        public class MemoryPuzzles extends MovieClip{
            //all variables


            public function MemoryPuzzles():void {//first function

 //function memory puzzles
                }//first function end end


    public function startFunction():void//beginning of second function in the single class
    {
                    trace("start function works");

    startTime = getTimer();
    if( (getTimer() - startTime)<3000 ){
    addEventListener(Event.ENTER_FRAME, doFunction);
    } else {
    removeEventListener(Event.ENTER_FRAME, doFunction);
    }

    function doFunction(e:Event):void
    {
        trace("do function works");
    }//end of dofunction
    }//end of startfunction
    }//class end
}//import end

谢谢

4

1 回答 1

0

参考以下代码。我测试过。

package
{
    import flash.display.MovieClip;
    import flash.utils.getTimer;

        public class MemoryPuzzles extends MovieClip
        {

            public function MemoryPuzzles():void 
            {
                startFunction();
            }

            public function startFunction():void
            {
                trace("start function works");

                var startTime = getTimer();
                addEventListener(Event.ENTER_FRAME, doFunction);
                function doFunction(e:Event):void
                {
                    trace("time: " + (int)(getTimer()-startTime));
                    if((int)(getTimer()-startTime)>=3000)
                    {
                        removeEventListener(Event.ENTER_FRAME, doFunction);
                        trace("ended");
                    } 
                }
            }
       }
}
于 2012-09-03T23:57:18.263 回答