理解框架脚本中的“onenterframe”

时间:2012-05-12 23:38:22

标签: flash actionscript actionscript-2

我无法理解帧级代码和onenterframe代码。我有两个框架,有动作脚本代码。我在关键帧frame1和frame2处有以下代码。当它在帧级别循环帧跟踪消息并且onenterframe被打印。 onenterframe代码有什么用?代码可以在帧级别插入。我认为framelevel的代码在播放头进入帧时第一次调用一次。当我删除frame2并且只有frame1只执行一次帧级跟踪代码时。不确定帧级代码如何用一帧执行一次,如果我有多次执行两帧帧级代码。

**FRAME1**
    trace("frame level");


    this.onEnterFrame =function()
    {
        trace("calling onenterframe");
    }


**FRAME2**

trace(" second frame level");
this.onEnterFrame =function()
{
    trace("calling second onenterframe");
}

2 个答案:

答案 0 :(得分:3)

框架代码

stop();

trace("frame level");

this.onEnterFrame = function()
{
    trace("calling onenterframe");
}

运行上面的代码将显示您所期望的内容,即多次输出calling onenterframe

基本上,由于你没有使用停止,闪存会不断循环框架并运行框架脚本。

使用stop()可确保flash运行一次帧脚本&停止。

如果你添加一个输入框架事件,那么将一次又一次地调用该函数。

答案 1 :(得分:2)

根据您的帧率调用Enterframe。 如果每秒有24个帧,则每秒24次调用enterframe处理程序。仅当播放头到达帧时才执行帧代码。如果你永远不会停止你的movieclip循环,你将同时执行framescript和onEnterFrame脚本。