Flex事件机制二


  三: dispatcherEvent EventDispatcher 是派发事件的武器,经它派发的事件对象必须是Event类型或者Event的子类。
  Event对象中包含目标对象存放的数据,这些数据都成为Event的属性,以供侦听器使用:
  Event的属性:
  .       bubbles:只读,布尔,事件是否开启冒泡功能
  .       cancelable:只读,布尔,处理事件的默认行为是否可以停止。主要针对一些系统事件,如果值为true,则Event的preventDefault方法可以使用,否则不可用。
  .       currentTarget:只读,对象,当前正在调用监听器的对象
  .       eventPhase:只读,整数,返回事件流正经历的阶段。1:捕获,2:目标,3:冒泡
  .       target:只读,派发事件的目标对象
  .       type:只读,字符,事件类型。比如鼠标点击事件的类型:click,并被定义为常量:MouseEvent.CLICK 
  构造函数:
  Event(
  type:String,    事件类型
  bubbles:Boolean = false,   是否冒泡
  cancelable:Boolean = false  是否可以停止
  )
  Event 的方法: isDefaultPrevented:判断preventDefault 是否已经被调用
  preventDefault:停止事件的默认行为。针对一些系统事件,cancelable为true时才可用。
  stopImmediatePropagation:停止当前的事件流传播,包括当前正在处理的对象
  stopPropagation:停止当前的事件流传播,但不会停止当前正在处理的对象
                                         height="160">                      height="90">                                                                  height="198" width="425"/>      四:removeEcentListener 要侦听一个事件,首先要创建一个函数来作为事件处理器,然后将这个函数注册给相应的时间类型。
  this.addEventListener(KeyboardEvent.KEY_DOWN,keyHa ndler);
  注册键盘按下事件,交给keyHandler处理,也可以在Application标签添加事件:
  keyDown="keyHandler(event)"  这种情况无法移除事件。
  注册了事件监听器,使用完毕后,必须使用removeEcentListener 方法删除监听函数:
  removeEventListener(
  type:String,   事件类型
  listener:Function,   监听函数
  useCapture:Boolean = false    是否开启捕获功能,如果注册时打开,移除也要打开。
  )
    
      
    
    
        
  height="198" width="212" editable="false"/>  
    
    

猜你喜欢

转载自djjrq21t.iteye.com/blog/1574183