Recently I was working on Flash and needed a calendar control, but Flash’s built-in component library doesn’t include a DateChooser for AS3, and searching around turned up nothing ready-made either, so I wrote one myself for AS3. (The rendered UI is based on com.thomas.DatePicker.DatePicker.) Sharing it with anyone else who needs one for Flash development.

Usage: package { import org.mousebomb.utils.DateAndTime; import flash.events.Event;

import org.mousebomb.ui.DatePicker;

import flash.display.Sprite;

/** * @author Mousebomb * @date 2009-7-21 */ public class TestMain extends Sprite { public var s : Sprite; public var dp : DatePicker;

public function TestMain() : void { dp = new DatePicker(); dp.x = 10; dp.y = 10;

dp.firstDayOfWeek = 1; dp.disabledDays = [6,0]; dp.showToday = true; dp.selectableRangeStart = new Date(2009,11,22); dp.selectableRangeEnd = new Date(2012,11,22); //dp.selectDate = new Date(2012,11,22); addChild(dp); dp.addEventListener(Event.SELECT, onSelect); dp.addEventListener(Event.SCROLL, onScroll); }

private function onScroll(event : Event) : void { trace(“scroll”); }

private function onSelect(event : Event) : void { trace(DateAndTime.formatDate(“%Y-%m-%d”,dp.selectDate)); //dp.hide(); } } } This example demonstrates the following behavior:

  • Default style, default font
  • Week starts on Monday
  • Saturday and Sunday are not selectable
  • Today is marked
  • Selectable range set to 2009.12.22~2012.12.22

Download the org.mousebomb.ui.DatePicker class