新手作业:Flex 节日计时器

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical" creationComplete="_onCreationComplete(event)" width="308" height="234">
 <mx:TitleWindow id="_panel" width="250" height="185" layout="absolute" title="计时器">
  <mx:Label id="_ld" x="10" y="10" width="210" fontFamily="Georgia" fontSize="13" fontWeight="bold"/>
  <mx:TextInput id="_output" x="10" y="40" width="210" height="53" fontSize="36" fontFamily="Arial" textAlign="center" editable="false" fontWeight="normal"/>
  <mx:Button id="_btn" x="10" y="113" label="@ Email @" width="210" click="_naviegateToURL(event)"/>
 </mx:TitleWindow>
 <mx:Script>
  <![CDATA[
   import flash.net.navigateToURL;
   import flash.net.URLRequest;
   import flash.ui.ContextMenu;
   import flash.display.Stage;
   import flash.display.StageScaleMode;
   import flash.events.Event;
   import flash.events.ContextMenuEvent;
   //-------------------主人姓名----------------------//
   private var _name:String=new String("Jusbe");
   //-------------------出生日期-(月份值要减1)----------//
   private var _bday:Date=new Date(1991,9-1,15,0,0,0,0);
   //-------------------待过生日----------------------//
   private var _openDate:Date=new Date();
   private var _tday:Date=new Date(_openDate.getFullYear(),_bday.getMonth(),_bday.getDate(),0,0,0,0);
   //-------------------诞辰周年----------------------//
   private var _old:uint=new uint(_tday.getFullYear()-_bday.getFullYear());
   
   
   private function _onCreationComplete(event:Event=null):void{
    contextMenu=_getContextMenu();
    //---------------待过生日----------------------//
    if(_tday.getMonth()<_openDate.getMonth()){
     _tday.setFullYear(_openDate.getFullYear()+1,_bday.getMonth(),_bday.getDate());
     _old++;
    }else if(_tday.getMonth()==_openDate.getMonth()&&_tday.getDate()<_openDate.getDate()){
     _tday.setFullYear(_openDate.getFullYear()+1,_bday.getMonth(),_bday.getDate());
     _old++;
    }
    _ld.text="距离 "+_name+" 诞辰 "+_old.toString()+" 周年还有:"
    addEventListener(Event.ENTER_FRAME,_showTime1);
   }
   // Show Time//
   // +----日期
   private function _showTime1(event:Event=null):void{
    var _date:Date=new Date();
    var _onlyDay:uint=new uint((_tday.getTime()-_date.getTime())/1000/60/60/24+1);
    if(_onlyDay<2){
     removeEventListener(Event.ENTER_FRAME,_showTime1);
     addEventListener(Event.ENTER_FRAME,_showTime2);
    }else{
     _output.text=_onlyDay.toString()+" 天";
    }
   }
   // +----时间
   private function _showTime2(event:Event=null):void{
    var _date:Date=new Date();
    var _onlyTime:uint=new uint((_tday.getTime()-_date.getTime())/1000);
    if(_onlyTime>86400||_onlyTime<1){
     removeEventListener(Event.ENTER_FRAME,_showTime2);
     _showTime3();
    }else{
     _output.text=_onlyTime.toString()+" 秒";
    }
   }
   // +----今天
   private function _showTime3():void{
    _output.parent.removeChild(_output);
    _btn.parent.removeChild(_btn);
    _ld.width=210
    _ld.height=125;
    _ld.text="今天是 "+_name+" 诞辰 "+_old.toString()+" 纪念日"
   }
   private function _naviegateToURL(event:MouseEvent=null):void{
    navigateToURL(new URLRequest("http://just2ping.qzone.qq.com/"));
   }
   private function _getContextMenu():ContextMenu{
    var _m:ContextMenu=new ContextMenu;
    var _item1:ContextMenuItem=new ContextMenuItem("倒计时工具",false,false,true);
    var _item2:ContextMenuItem=new ContextMenuItem("Jusbe 制作");
    _item2.addEventListener(ContextMenuEvent.MENU_ITEM_SELECT,_onMenuItemSelect);
    _m.customItems.push(_item1,_item2);
    _m.hideBuiltInItems();
    return _m;
   }
   private function _onMenuItemSelect(event:ContextMenuEvent=null):void{
    navigateToURL(new URLRequest("email://long92ping@vip.qq.com"));
   }
   //---------------Music------------------------//
  ]]>
 </mx:Script>
</mx:Application>

posted on 2009-09-16 22:34  Jusbe  阅读(338)  评论(0)    收藏  举报

导航