问题:
我要重复执行某段代码
解决办法:
在 enterFrame 事件中添加监听器和关联处理方法
讨论:
在 ActionScript 2.0 中处理 enterFrame 事件 是 很简 单 的 ,你只要创建时间线函数调用 onEnterFrame 然后每次新帧开始时就会自动调用。在 ActionScript 3.0 中有各种各样的事件需要 控制,访问他们也是不难的。
如果你熟悉 ActionScript 2.0 中的 EventDispatcher 类的话,你就很好理解 ActionScript 3.0 事件句柄了。 要广播 enterFrame 事件 ,你 要告诉你的程序去监听这个事件然后指定回 函 数。 用addEventListener 方法可以做到:
addEventListener(type:String, listener:Function)
type 参数指出你要监听的事件类型,比如"enterFrame". 然而自己输入这些字符串容易出错,最好 的办法就是调用 Event 类的静态成员属性:导入 Event 类,调用 addEventListener 方法: addEventListener(Event.ENTER_FRAME, onEnterFrame);
第二个参数 onEnterFrame,指向类中定义的回调函数,该函数需要传递进 EVENT 的一个实例:
import flash.events.Event;
private function onEnterFrame(event:Event) {}
event 对象包含一些于该事件有关的信息。这里有个简单的例子:画出一些随机线。
package {
import flash.display.Sprite;
import flash.events.Event;
public class ExampleApplication extends Sprite {
public function ExampleApplication( ) {
graphics.lineStyle(1, 0, 1);
addEventListener(Event.ENTER_FRAME, onEnterFrame);
}
private function onEnterFrame(event:Event):void {
graphics.lineTo(Math.random( ) * 400, Math.random( ) * 400);
}
}
}
Word教程网 | Excel教程网 | Dreamweaver教程网 | Fireworks教程网 | PPT教程网 | FLASH教程网 | PS教程网 |
HTML教程网 | DIV CSS教程网 | FLASH AS教程网 | ACCESS教程网 | SQL SERVER教程网 | C语言教程网 | JAVASCRIPT教程网 |
ASP教程网 | ASP.NET教程网 | CorelDraw教程网 |