AS3中的EVENT

事件的派发:dispatchEvent(new Event("event",true));
事件的注册:bt.addEventListener("event",eventHandler);
事件的删除:bt.removeEventListener("event",eventHandler);

 

1.新建FLA,命名为eventTest.fla

在第十帧处加入代码

dispatchEvent(new Event("str",true));

设置绑定的文档类为:

documentClasses.eventTest

 

2.在documentClasses文件夹下,新建eventTest.as

代码如下:

package documentClasses{
 import flash.display.MovieClip;
 import flash.events.Event;
 import flash.text.TextField;

public class eventTest extends MovieClip {
  private var diry:int;/*记录文本的位置*/
  public function eventTest() {
   super();
   diry = 0;
   addEventListener("str",strHandler);/*注册事件*/
  }
  protected function strHandler(evt:Event):void {
   if (diry < 75) {
    displayText();
   } else {
    removeEventListener("str",strHandler);/*删除事件*/
   }
  }
  protected function displayText():void {
   var txt:TextField = new TextField();
   txt.text = "Hello world !";
   txt.textColor =0xff0000;
   txt.y = diry;
   diry += 15;
   addChild(txt);
  }
 }
}

3.在flash cs 3 中执行eventTest.fla

会一行一行输出红色文本“Hello world”

输出5行后,将不会有新文本输出西显示

你可能感兴趣的:(Flash)