FLEX中自定义timer和DataTimer的例子

 转载的代码,本人也是刚刚入门,所以添加不上解释,望有高手可以添加一下注释以供学习

 

 

  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  3.         layout="vertical"
  4.         verticalAlign="middle"
  5.         backgroundColor="white"
  6.         creationComplete="init();">
  7.  
  8.     <mx:Script>
  9.         <![CDATA[
  10.             import mx.utils.UIDUtil;
  11.  
  12.             private var timer:DataTimer;
  13.  
  14.             private function init():void {
  15.                 timer = new DataTimer(1000);
  16.                 timer.data.startTime = getTimer();
  17.                 timer.data.uid = UIDUtil.createUID();
  18.                 timer.addEventListener(TimerEvent.TIMER, timer_timer);
  19.                 timer.start();
  20.             }
  21.  
  22.             private function timer_timer(evt:TimerEvent):void {
  23.                 var tmr:DataTimer = evt.currentTarget as DataTimer;
  24.                 var obj:Object = new Object();
  25.                 obj.currentCount = tmr.currentCount;
  26.                 obj.delay = tmr.delay;
  27.                 obj.repeatCount = tmr.repeatCount;
  28.                 obj.running = tmr.running;
  29.                 obj.startTime = tmr.data.startTime;
  30.                 obj.uuid = tmr.data.uid;
  31.                 arrColl.addItemAt(obj, 0);
  32.             }
  33.         ]]>
  34.     </mx:Script>
  35.  
  36.     <mx:ArrayCollection id="arrColl"/>
  37.  
  38.     <mx:DataGrid id="dataGrid"
  39.             dataProvider="{arrColl}"
  40.             width="100%"
  41.             rowCount="10"
  42.             verticalGridLines="false"
  43.             verticalScrollPolicy="on">
  44.         <mx:columns>
  45.             <mx:DataGridColumn dataField="currentCount"/>
  46.             <mx:DataGridColumn dataField="repeatCount"/>
  47.             <mx:DataGridColumn dataField="delay"/>
  48.             <mx:DataGridColumn dataField="running"/>
  49.             <mx:DataGridColumn dataField="startTime"
  50.                     headerText="startTime (*)" />
  51.             <mx:DataGridColumn dataField="uuid"
  52.                     headerText="uuid (*)" />
  53.         </mx:columns>
  54.     </mx:DataGrid> 
  55.  
  56. </mx:Application>

 

 

 

 

下面是DataTimer.as代码:

  1. package{
  2.     import flash.utils.Timer;
  3.  
  4.     public classDataTimer extends Timer{
  5.         private var_data:Object;
  6.  
  7.         public functionDataTimer(delay:Number,repeatCount:int=0){
  8.             super(delay,repeatCount);
  9.             _data ={};
  10.         }
  11.  
  12.         public functionget data():Object{
  13.             return _data;
  14.         }
  15.  
  16.         public functionset data(value:Object):void{
  17.             _data =value;
  18.         }
  19.     }
  20. }

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值