学习 Flash Lite 1.x ActionScript |
|
|
|
| Flash 4 ActionScript 基本知识 > 使用 call() 函数来创建函数 | |||
不能像在 Flash Player 5 及更高版本中那样在 Flash Lite 中定义或调用自定义函数。但可以使用 call() ActionScript 函数来执行位于时间轴中任一帧上的代码。这种方法可以将常用的代码封装在单一的位置,使其易于维护。
call() 函数将帧号或帧标签作为参数。例如,以下 ActionScript 调用位于标签为 moveUp 的帧上的代码:
call("moveUp");
call() 函数以同步方式操作;所指定帧上的所有 ActionScript 都执行完毕之后,call() 函数调用之后的任何 ActionScript 才会执行。
调用另一帧上的 ActionScript:
trace("Hello from frame 10");
stop(); call(10);
这段代码会将播放头停在第 1 帧上,然后调用第 10 帧上的代码。
您应该可以看到"Hello from frame 10"显示在"输出"面板中。
也可以调用位于另一时间轴(如影片剪辑的时间轴)上的代码。要执行代码,请指定影片剪辑实例名称,后面跟随一个冒号,然后指定帧编号或帧标签。例如,以下 ActionScript 调用位于名为 callClip 的影片剪辑实例中的标签为 moveUp 的帧上的代码:
call("callClip:moveUp");
此方法通常用于创建调用剪辑 或函数剪辑,即仅用于封装常用代码的影片剪辑。调用剪辑包含用于要创建的每个函数的关键帧。通常需要根据用途对每个关键帧进行标记。Macromedia 还建议为每个新建关键帧创建一个新图层,并为每个图层指定与分配给该关键帧的帧标签相同的名称。
下图显示了一个调用剪辑示例的时间轴。调用剪辑的第一个关键帧始终包含一个 stop() 动作,这可确保播放头不会连续地在其时间轴中的各帧间循环。随后的关键帧包含每个"函数"的代码。每个函数关键帧都带有标签,以标识所执行的任务。要更容易地编辑和查看调用剪辑,每个函数关键帧通常都插入在一个单独的图层上。

以下过程说明了如何创建和使用调用剪辑。
要创建和使用调用剪辑:即会在编辑模式中打开该影片剪辑。
将顶部图层命名为 Actions,将第二个图层命名为 function1,将第三个图层命名为 function2。

stop() 动作。
trace("function1 was called.");

trace("function2 was called.");
因为调用剪辑不需要对用户可见,因此可以将其放置在工作区中。
调用剪辑不包含任何可视元素,因此它在舞台上显示为一个小圆圈,表示影片剪辑的注册点。

|
提示 |
要使调用剪辑在舞台上更易于识别,请向调用剪辑的时间轴中的第一个关键帧添加某些文本或其它可视元素。 |
call("callClip:function1");
call("callClip:function2");
您应在"输出"面板中看到以下文本:
function1 was called. function2 was called.
|
|
|
|