`
jacally
  • 浏览: 760131 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Flex 开发学习笔记5 - Flex Component 组件开发 - 时间选择

阅读更多
这一次仍然总结一下Flex Component 组件的开发,在Flex 开发学习笔记3中开发的是一个分页列表的组件,是通过Flex MXML 的定义实现的,这次我来通过Flex 的 ActionScript 来定义一个组件,其实是通过继承的方式实现了一个新的类。



在Flex的组件库中,DateFiled定义了一个选择日期的输入框,默认是英文环境,如果要设置为中文的月份与星期,需要作以下的设置:
        <mx:DateField id="dateField1" yearNavigationEnabled="true" 
        	dayNames="['日','一','二','三','四','五','六']"
        	monthNames="['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月']"
        	 formatString="YYYY-MM-DD"/>


如果日期输入的地方比较多,需要每一个DateFiled都要这样定义,应该定义一个适应不同语言环境的日期组件,通过引用这个组件自动设置当前的日期选择。以下就是通过Flex的ActionScript自定义的DateFieldLocal代码,比较简单:
package simples.date
{
	import mx.controls.DateField;
	
	public class DateFieldLocal extends DateField
	{
		
		/** 中文环境标识 **/
		public static var LOCAL_ZH_CN:String = "zh_CN";
		
		public function DateFieldLocal()
		{
			super();
		}
		
		private var _locale : String;
		
		public function get locale():String{
			return _locale;
		}
		
		public function set locale(value:String):void{
			this._locale = value;
			
			//
			initLanguage();
		}
		
		private function initLanguage():void{
			
			if(_locale && _locale.length >0){
				switch(_locale){
					
					case LOCAL_ZH_CN:
						dayNames=['日','一','二','三','四','五','六'] ;
						monthNames=['一月','二月','三月','四月','五月','六月','七月','八月','九月','十月','十一月','十二月'];
						this.formatString="YYYY年MM月DD日";
					break;
					
					//case "zh_HK":					
					//break;
					//default:
					//break;
				}
			}
		}

	}
}


对这个组件的引用:
<user:DateFieldLocal id="dateField2" locale="zh_CN"/>


目前还没有作到根据客户机的语言环境自动设置,如何获得客户机的语言环境信息?还希望有知道的达人给指点一下。
附件中有demo代码。
  • test.rar (844.5 KB)
  • 描述: 安装了 Flex Builder 插件的Eclipse项目工程
  • 下载次数: 400
分享到:
评论
8 楼 qiyangyang2010 2010-06-09  
继续加油写些比较实用的
7 楼 qiyangyang2010 2010-06-09  
好的很,继续努力,希望下次记着讲解哈道理,然后我们才会更好的去理解。
6 楼 qiyangyang2010 2010-06-09  
好的很,继续努力,希望下次记着讲解哈道理,然后我们才会更好的去理解。
5 楼 qiyangyang2010 2010-06-09  
好的很,继续努力,希望下次记着讲解哈道理,然后我们才会更好的去理解。
4 楼 qiyangyang2010 2010-06-09  
好的很,继续努力,希望下次记着讲解哈道理,然后我们才会更好的去理解。
3 楼 qiyangyang2010 2010-06-09  
好的很,继续努力,希望下次记着讲解哈道理,然后我们才会更好的去理解。
2 楼 z.cen 2008-07-26  
没用过Flex,准备学习下.
1 楼 z.cen 2008-07-26  
怎么布署和运行啊?

相关推荐

Global site tag (gtag.js) - Google Analytics