免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 1976 | 回复: 0

mx.events.PropertyChangeEvent [复制链接]

论坛徽章:
0
发表于 2011-12-23 02:27 |显示全部楼层
1.简介
       继承关系:PropertyChangeEvent Inheritance Event Inheritance Object
       如果对象的属性值发生变化,可以派发PropertyChangeEvent事件来表示。
       Flex 数据绑定机制也使用此事件。
       例子请参考《PropertyChangeEvent事件

2.常见属性和方法
2.1 属性PROPERTY_CHANGE
PROPERTY_CHANGE : String = "propertyChange"
[静态] PropertyChangeEvent.PROPERTY_CHANGE 常量可为 PropertyChange 事件定义事件对象的 type 属性的值。

2.2 属性kind
指定更改的类型。String类型
可能的值为 PropertyChangeEventKind.UPDATE、PropertyChangeEventKind.DELETE 和 null

2.3 属性newValue

更改后的属性的值。Object类型

2.4 属性oldValue
更改前的属性的值。Object类型

2.5 属性property
需要更改的属性Object类型

2.6 属性source
发生更改属性的对象。Object类型

2.7 属性currentTarget
用于定义处理该事件的事件侦听器的 Object。Object类型
例如,如果您使用myButton.addEventListener() 注册某个事件侦听器,则 myButton 为 currentTarget 的值。

2.8 属性target
事件目标。Object类型
派发事件的 Object;它不一定是侦听该事件的 Object。使用 currentTarget 属性始终可以访问侦听事件的 Object。


3.源代码
  1. package mx.events
  2. {

  3. import flash.events.Event;
  4. import mx.events.PropertyChangeEventKind;

  5. public class PropertyChangeEvent extends Event
  6. {
  7.     include "../core/Version.as";

  8.     //类属性
  9.     public static const PROPERTY_CHANGE:String = "propertyChange";

      //类方法
  1.     public static function createUpdateEvent(
  2.                                     source:Object,
  3.                                     property:Object,
  4.                                     oldValue:Object,
  5.                                     newValue:Object):PropertyChangeEvent
  6.     {
  7.         var event:PropertyChangeEvent =
  8.             new PropertyChangeEvent(PROPERTY_CHANGE);
  9.         
  10.         event.kind = PropertyChangeEventKind.UPDATE;
  11.         event.oldValue = oldValue;
  12.         event.newValue = newValue;
  13.         event.source = source;
  14.         event.property = property;
  15.         
  16.         return event;
  17.     }

  18.     // 构造函数
  19.     public function PropertyChangeEvent(type:String, bubbles:Boolean = false,
  20.                                         cancelable:Boolean = false,
  21.                                         kind:String = null,
  22.                                         property:Object = null,
  23.                                         oldValue:Object = null,
  24.                                         newValue:Object = null,
  25.                                         source:Object = null)
  26.     {
  27.         super(type, bubbles, cancelable);

  28.         this.kind = kind;
  29.         this.property = property;
  30.         this.oldValue = oldValue;
  31.         this.newValue = newValue;
  32.         this.source = source;
  33.     }

  34.     // 属性kind
  35.     public var kind:String;

  36.  
  37.     // 属性newValue
  38.     public var newValue:Object;


  39.     // 属性 oldValue
  40.     public var oldValue:Object;


  41.     // 属性property
  42.     public var property:Object;

  43.     // 属性source
  44.     public var source:Object;

  45.     //方法clone,继承自Event
  46.     /**
  47.      * @private
  48.      */
  49.     override public function clone():Event
  50.     {
  51.         return new PropertyChangeEvent(type, bubbles, cancelable, kind,
  52.                                        property, oldValue, newValue, source);
  53.     }
  54. }

  55. }

参考文献
1.类参考.http://help.adobe.com/zh_CN/FlashPlatform/reference/actionscript/3/mx/events/PropertyChangeEvent.html?filter_flex=4.1&filter_flashplayer=10.2&filter_air=2.6#kind
2.源代码.http://opensource.adobe.com/svn/opensource/flex/sdk/trunk/frameworks/projects/framework/src/mx/events/PropertyChangeEvent.as
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP