Flex中如何通过yearNavigationEnabled属性使DateChooser控件可以直接对年进行操作的例子

By Minidxer | July 24, 2008

接下来的例子分别演示了MXML和ActionScript实现如何通过yearNavigationEnabled属性,使DateChooser控件可以直接对年进行操作。

让我们先来看一下Demo可以右键View Source或点击这里察看源代码):


下面是完整MXML实现代码(或点击这里察看):

Download: main.mxml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  3.         layout="vertical"
  4.         verticalAlign="top"
  5.         backgroundColor="white">
  6.  
  7.     <mx:ApplicationControlBar dock="true">
  8.         <mx:Form styleName="plain">
  9.             <mx:FormItem label="yearNavigationEnabled:">
  10.                 <mx:CheckBox id="checkBox" />
  11.             </mx:FormItem>
  12.         </mx:Form>
  13.     </mx:ApplicationControlBar>
  14.  
  15.     <mx:DateChooser id="dateChooser"
  16.             yearNavigationEnabled="{checkBox.selected}" />
  17.  
  18. </mx:Application>
下面是ActionScript的yearNavigationEnabled实现代码:
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  3.         layout="vertical"
  4.         verticalAlign="top"
  5.         backgroundColor="white">
  6.  
  7.     <mx:Script>
  8.         <![CDATA[
  9.             private function checkBox_change(evt:Event):void {
  10.                 dateChooser.yearNavigationEnabled = checkBox.selected;
  11.             }
  12.         ]]>
  13.     </mx:Script>
  14.  
  15.     <mx:ApplicationControlBar dock="true">
  16.         <mx:Form styleName="plain">
  17.             <mx:FormItem label="yearNavigationEnabled:">
  18.                 <mx:CheckBox id="checkBox"
  19.                         change="checkBox_change(event);" />
  20.             </mx:FormItem>
  21.         </mx:Form>
  22.     </mx:ApplicationControlBar>
  23.  
  24.     <mx:DateChooser id="dateChooser" />
  25.  
  26. </mx:Application>
下面是这个例子的ActionScript实现:
Download: main.mxml
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
  3.         layout="vertical"
  4.         verticalAlign="top"
  5.         backgroundColor="white"
  6.         initialize="init();">
  7.  
  8.     <mx:Script>
  9.         <![CDATA[
  10.             import mx.containers.ApplicationControlBar;
  11.             import mx.containers.Form;
  12.             import mx.containers.FormItem;
  13.             import mx.controls.CheckBox;
  14.             import mx.controls.DateChooser;
  15.  
  16.             private var checkBox:CheckBox;
  17.             private var dateChooser:DateChooser;
  18.  
  19.             private function init():void {
  20.                 checkBox = new CheckBox();
  21.                 checkBox.addEventListener(Event.CHANGE, checkBox_change);
  22.  
  23.                 var formItem:FormItem = new FormItem();
  24.                 formItem.label = "yearNavigationEnabled:";
  25.                 formItem.addChild(checkBox);
  26.  
  27.                 var form:Form = new Form();
  28.                 form.styleName = "plain";
  29.                 form.addChild(formItem);
  30.  
  31.                 var appControlBar:ApplicationControlBar;
  32.                 appControlBar = new ApplicationControlBar();
  33.                 appControlBar.dock = true;
  34.                 appControlBar.addChild(form);
  35.                 Application.application.addChildAt(appControlBar, 0);
  36.  
  37.                 dateChooser = new DateChooser();
  38.                 addChild(dateChooser);
  39.             }
  40.  
  41.             private function checkBox_change(evt:Event):void {
  42.                 dateChooser.yearNavigationEnabled = checkBox.selected;
  43.             }
  44.         ]]>
  45.     </mx:Script>
  46.  
  47. </mx:Application>
代码:Peter deHaan 翻译/整理/编译:minidxer
 

Topics: Flex | Tags: ,

Search Posts

Archives

Sponsored Ads