`
darrenzhu
  • 浏览: 807455 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

flexlib的treeGrid用法

阅读更多
为了使用treeGrid,通常你需要定义自己的DataDescriptor和data model,下面是一个案例.

	public class HierarchySearchResultVO
	{
		public function HierarchySearchResultVO(){
				this._id=UIDGenerator.createUID();
		}
		
		/**
		 * An unique identifier of the created HierarchySearchResultVO object.
		 */ 
		[Transient]
		private var _id:String;
		
		public function get id():String{
			return this._id;
		}
		
		public function set id(value:String):void{
			this._id=value;
		}
		
		/**
		 * If not a summary record, it should have a parent.
		 */ 
		[Transient]
		public var parent:HierarchySearchResultVO;
		
		/**
		 * Indicates whether the record shows at summary level or detail level in a treeGrid.</br>
		 * True denotes a summary record, false denotes detail record, default is false.
		 */ 
		[Transient]
		public var isSummaryRecord:Boolean=false;
		
		/**
		 * Only applicable to summary record.
		 * Indicates whether the summary record has got its children from server.</br>
		 * True denotes the summary record has already got its children from serve;</br>
		 * False denotes not yet.
		 */ 
		[Transient]
		public var hasChildrenReturned:Boolean=false;
		
		/**
		 * Indicates whether the summary record itself or detail record is checked,
		 * isAllSeleceted and isPartSelected are used to indicate whether the children of 
		 * the summary record are checked, they don't indicate the check status of the summary record itself.
		 */ 
		[Transient]
		public var isSelected:Boolean=false;
		
		/**
		 * Indicates whether all the children records of a summary record have been checked,
		 * only used for a summary record, should be exclusive with isPartSelected. 
		 * If isAllSelected=false and isPartSelected=false means none of the children records have been checked.
		 */ 
		//[Transient]
		//public var isAllSelected:Boolean=false;
		
		/**
		 * Indicates only part of the children records of a summary record have been checked,
		 * only used for a summary record, should be exclusive with isAllSelected. 
		 * If isAllSelected=false and isPartSelected=false means none of the children records have been checked.
		 */
		[Transient]
		public var isPartSelected:Boolean=false;
		
		/**
		 * This property name should be same as what we defined in HierarchySearchResultDataDescriptor,
		 * element should be object of HierarchySearchResultVO, not SearchResultVO.
		 */ 
		[Transient]
		public var childrenCollection:ArrayCollection;
		
		public var searchResultVO:SearchResultVO;
}



	/**
	 * Used to parse the data of the TreeGrid
	 */ 
	public class HierarchySearchResultDataDescriptor extends DefaultDataDescriptor
	{
		public function HierarchySearchResultDataDescriptor()
		{
			super();
		}
		
		override public function getChildren(node:Object, model:Object=null):ICollectionView
		{
			return node.childrenCollection;
		}
		
		override public function hasChildren(node:Object, model:Object=null):Boolean
		{
			return node != null && node.childrenCollection != null && (node.childrenCollection as ArrayCollection) != null && (node.childrenCollection as ArrayCollection).length > 0;
		}
		
		override public function isBranch(node:Object, model:Object=null):Boolean
		{
			return (node as HierarchySearchResultVO).isSummaryRecord;
		}
		
		override public function getData(node:Object, model:Object=null):Object
		{
			return node;
		}
		
	}
分享到:
评论

相关推荐

    flexlib 2.5资源包

    Flexlib 2.5资源包是一款专为Adobe Flex 4开发者设计的开源库,它提供了丰富的自定义组件和功能,极大地扩展了Flex SDK的基础组件集。这个资源包旨在帮助开发者构建更加灵活、交互性更强且视觉效果丰富的Flex应用...

    flexlib示例源码

    4. **实例应用**:提供的实例可以帮助我们看到如何在实际项目中使用Flexlib组件。这些示例可能包括各种功能的演示,如动态数据绑定、动画效果、用户交互等,有助于快速上手并掌握组件的用法。 5. **性能优化**:...

    flexlib.swc

    三、使用方法 要将Flexlib.swc集成到项目中,开发者需要将该库文件添加到Flex Builder或Flash Builder的类路径中。在完成这一步后,项目就能访问到Flexlib.swc中所有的类和组件。通过在MXML文件中直接引用组件,...

    flexlib源码

    Flex是一个用于创建交互式、数据驱动的Web应用程序的开发框架,它允许开发者使用MXML和ActionScript来构建用户界面。MXML是一种声明性语言,类似于HTML,用于定义界面布局和组件。ActionScript则是运行时脚本语言,...

    flexlib - 2.5 - flex3

    `examples`目录则包含了实际的应用示例,这些示例展示了flexlib 2.5组件在真实场景中的使用方法。通过查看和运行这些例子,开发者能直观地了解每个组件的功能和效果,同时也可以作为代码参考,加速开发进程。 `src`...

    FlexLib FLEX高级组件的开源类库

    开发者可以通过阅读这些文档,了解每个组件的用法、属性、事件和方法,以便在实际开发中灵活运用。 `examples`目录包含了各种示例代码,这是学习和理解FlexLib组件工作原理的绝佳资源。通过查看和运行这些例子,...

    IOS新一代界面开发利器 —— FlexLib.zip

    4. **易用性和性能**:尽管FlexLib引入了Web开发的思路,但它是为iOS原生平台优化的,因此在性能上与传统方法相当,同时提供了更好的开发体验。 5. **社区支持**:作为开源项目,FlexLib拥有活跃的社区支持,开发者...

    flexlib flex的扩展组件

    学习和使用Flexlib,你可以通过阅读帮助文档了解每个组件的用法、属性和事件,然后在自己的项目中逐步尝试和实践。此外,参与社区讨论和分享,可以获取更多关于Flexlib的技巧和最佳实践,从而提升你的Flex开发技能。...

    flexlib

    这些例子展示了如何在实际项目中应用这些组件,帮助开发者学习和掌握组件的使用方法。通过查看和运行这些示例,开发者可以更好地理解各个组件的工作原理和交互方式,从而更有效地将其集成到自己的应用程序中。 `src...

    FlexLib中ImageMap区域效果

    在flexlib的imagemap上依据数值进行着色(负荷图)

    flex3.2分页控件以及通过flexlib自定义Accordion

    在"demo"文件中,可能包含了一个使用flexlib自定义Accordion的示例项目,通过查看源代码和运行程序,可以更直观地了解如何在实际项目中应用这些概念。 总结来说,Flex 3.2的分页控件和Accordion组件是构建富互联网...

    flexLib热点

    flexlib 关于flex的地图热点时间的lib包

    flexlib库下载

    超强的flex扩展组件,让你有意外的惊喜 flexlib2.4

    高级组件flexlib

    出色的Flex开源组件库FlexLib, 高质量的开源Flex UI组件库项目

    SwiftUI-FlexLib 的使用xcode模版

    对于初学者,通过模板学习FlexLib的用法非常有帮助;对于经验丰富的开发者,模板则能让他们迅速将FlexLib引入到新的项目中。 在实际使用过程中,开发者可以通过Xcode的“File” &gt; “New” &gt; “Project”或者“File...

    flexlib-master.zip

    通过学习和使用flexlib,开发者不仅可以提高Flex应用的质量,还能减少重复工作,加速项目开发进程。在实际开发中,结合Flex SDK和flexlib,可以构建出功能强大、用户体验优秀的富互联网应用程序。 总之,flexlib是...

    flexlib.swc update

    修改MDIWindow.as文件的 onWindowMove 添加两个属性 只有在 windowManager.enforceBoundaries =false时候可用 1. floatInCanvas 是否停靠 2.floatSize 停靠边界露出部分的宽度或者高度 默认为 30px ...

    flexlib---2.5---flex3.rar_flex_flexlib

    为了使用这个压缩包中的内容,你需要将其中的文件解压到你的Flex项目中,并正确引用所需的库文件。在开发过程中,查阅Flexlib的文档和示例代码,将有助于理解如何有效地利用这些类和组件。 总的来说,Flexlib 2.5 ...

    flexlib开源类库(Flex4版)

    这些文档对于理解和使用Flexlib至关重要,因为它们提供了详细的类和方法说明,以及如何使用类库的指导。 Flexlib类库在Flex 4中的关键特性可能包括: 1. **高级组件**:Flexlib可能提供了定制的UI组件,如图表、...

Global site tag (gtag.js) - Google Analytics