- 浏览: 1585295 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (571)
- Flex (301)
- AIR (5)
- ComPiere (8)
- ExtJS (15)
- SAP (0)
- jBPM (3)
- Java-Hibernate (5)
- Java-Spring (10)
- XML (2)
- java-web (30)
- db2 (2)
- websphere (4)
- Google (5)
- 虚拟机 (10)
- eclipse (8)
- Win2003 (11)
- Ubuntu (27)
- VMware (4)
- CentOS (3)
- JSON (1)
- Oracle (15)
- SilverLight (1)
- 大事记 (6)
- VirtualBox (5)
- Solaris (10)
- AIX (6)
- 云计算 (10)
- MacOS (4)
- iOS (1)
- SQLite (1)
- Activiti (1)
- jdk (5)
- hadoop (8)
- Ant (4)
- PhoneGap (2)
- JavaScript (11)
- jQuery (1)
- FireFox (1)
- HBase (2)
- sqoop (0)
- ffmpeg (7)
- mencode (0)
- jdbc (1)
- SQLServer (1)
- 组件平台 (12)
- struts2 (4)
- intellj (4)
- android (1)
- ExtJS4 (1)
- 色卡司 (1)
- Linux (3)
- ExtJS5 (1)
- zookeeper (2)
- maven (1)
- Java (6)
- vpn (0)
- squid (1)
- MySQL (2)
- webpackage (1)
- antd (1)
- lucene (1)
最新评论
-
qq_24800465:
请问这里的库从哪下载啊
ffmpeg所有的编码器(encoders) -
neusoft_jerry:
貌似这里没用到StreamingAMFChannel哦,只是用 ...
Flex BlazeDS 推送技术 -
anyone:
感谢你的博文,看了受益匪浅
记住这个IntelliJ IDEA的编译设置 -
keren:
现在还有什么应用需要用flex来开发的?
flex tree的展开,关闭,添加、删除子节点 -
neusoft_jerry:
简洁明快,好贴好贴!楼主V5!
flex tree的展开,关闭,添加、删除子节点
转:http://callan.iteye.com/blog/335551
集合是ActionScript 中功能强大的基于索引的数组组件,添加了如对内容进行排序等功能,
操作数组的读取位置,创建经过排序的数组视图。集合也能通知其任意事件监听器监听其数
据是否改变,以及任何数据项被添加到源数组时可执行自定义逻辑。当数据改变时可通知其
监听器,这是集合的新功能,叫数据绑定,还有就是允许DataGrid 和List 组件对其内容进行排序和过滤。集合是使用数据驱动控件以及从数据库返回的服务器端服务的重要内容。
经常被使用的两个集合类型是ArrayCollection 类XMLListCollection 类。
ArrayCollection 是Array 的包装类,提供更方便的如添加和移除数据项以及能够创建游标启用要轻松地存储数组中的最后读取的位置等方法。而XMLListCollection 是XML 对象的包装类,提供的功能有:根据索引访问数据,添加新对象以及游标等方法。XMLListCollection 对于处理XML 对象以及经常需要解析XML 为数组时特别有用。
使用addItemAt 或addItem 方法插入对象到ArrayCollection ,
getItemIndex 或contains 方法用于检测数据项是否已存在于数组中,而ArrayCollection 的sort
属性是对ArrayCollection 排序以及通过某个字段决定接收第一个或最后一个数据。
Sort 对象提供findItem 方法用于搜索这个ArrayCollection 中的所有元素。方法原型如下:
public function findItem(items:Array, values:Object, mode:String,
returnInsertionIndex:Boolean = false, compareFunction:Function = null):int
Value 参数可以是包含属性和所需值的任何对象。Mode 字符串可以是
Sort.ANY_INDEX_MODE,表示返回任何匹配项索引,Sort.FIRST_INDEX_MODE 表示返
回第一个匹配项索引, Sort.LAST_INDEX_MODE 表示返回最后一个匹配项索引。
returnInsertionIndex 参数表示如果该方法找不到由values 参数标识的项目,并且此参数为
true,则findItem() 方法将返回这些值的插入点,也就是排序顺序中应插入此项目的。
compareFunction 设置用于查找该项目的比较运算符函数.
使用Sort 对象的findItem 方法代替上面的方法:
首先要创建一个Sort,传递一个SortField 对象数组给fields 属性。这些SortField 对象包含
的字符串正是每个ArrayCollection 元素将要用来排序的属性。如要对每个对象的age 属性进
行排序,创建Sort 对象,传递SortField,设置排序字段为age:
过滤ArrayCollection
对ArrayCollection 数据进行过滤,设置过滤器移除些不匹配的结果。
将原型为function(item:Object):Boolean 的函数传递给ArrayCollection 的filter 属性。如果返
回true 表示值继续留在ArrayCollection,返回false 表示其值被移除。
filterFunction 属性是由ListCollectionView 类定义,它是ArrayCollection 的父类。当过滤器
函数被传递给继承自ListCollectionView 的任何子类后,这里为ArrayCollection 对象,应用
过滤器后必须调用refresh 方法:
补:JAVA里的LIST、ARRAYLIST对应到FLEX里可以用ArrayCollection来接收。
eg:通过JAVA写一个连接ORACLE的方法,返回一个ARRAYLIST,该ARRAYLIST里放的一般是一个个的HASHMAP。如果通过RemoteObject(或其他方式)来调用该方法时,FLEX端接收到的肯定是个OBJECT,这个时候可以强制转换成ArrayCollection。然后通过遍历该ArrayCollection,来取得存每条数据的OBJECT(JAVA里的HASHMAP)。
FLEX里没有MAP类,但只要你知道了JAVA里MAP的KEY,那么FLEX里就可以作为OBJECT的一个属性来访问。
集合是ActionScript 中功能强大的基于索引的数组组件,添加了如对内容进行排序等功能,
操作数组的读取位置,创建经过排序的数组视图。集合也能通知其任意事件监听器监听其数
据是否改变,以及任何数据项被添加到源数组时可执行自定义逻辑。当数据改变时可通知其
监听器,这是集合的新功能,叫数据绑定,还有就是允许DataGrid 和List 组件对其内容进行排序和过滤。集合是使用数据驱动控件以及从数据库返回的服务器端服务的重要内容。
经常被使用的两个集合类型是ArrayCollection 类XMLListCollection 类。
ArrayCollection 是Array 的包装类,提供更方便的如添加和移除数据项以及能够创建游标启用要轻松地存储数组中的最后读取的位置等方法。而XMLListCollection 是XML 对象的包装类,提供的功能有:根据索引访问数据,添加新对象以及游标等方法。XMLListCollection 对于处理XML 对象以及经常需要解析XML 为数组时特别有用。
<mx:ArrayCollection id="arrColl"> <mx:source> <mx:Array> <mx:Object label=" ActionScript基础" data=" A-1" /> <mx:Object label="追风筝的人" data="B-1" /> <mx:Object label="神秘河" data="C-1" /> </mx:Array> </mx:source> </mx:ArrayCollection>
使用addItemAt 或addItem 方法插入对象到ArrayCollection ,
getItemIndex 或contains 方法用于检测数据项是否已存在于数组中,而ArrayCollection 的sort
属性是对ArrayCollection 排序以及通过某个字段决定接收第一个或最后一个数据。
<mx:Script> <![CDATA[ import mx.collections.SortField; import mx.collections.Sort; import mx.collections.ArrayCollection; private var coll:ArrayCollection; private function init():void { coll=new ArrayCollection([{name: "Martin Foo", age: 25}, {name: "Joe Bar", age: 15}, {name: "John Baz", age: 23}]); } //要插入元素到指定位置,可使用addItemAt 方法: private function addItem():void { coll.addItemAt({name: "James Fez", age: 40}, 0); } ]]> </mx:Script>
Sort 对象提供findItem 方法用于搜索这个ArrayCollection 中的所有元素。方法原型如下:
public function findItem(items:Array, values:Object, mode:String,
returnInsertionIndex:Boolean = false, compareFunction:Function = null):int
Value 参数可以是包含属性和所需值的任何对象。Mode 字符串可以是
Sort.ANY_INDEX_MODE,表示返回任何匹配项索引,Sort.FIRST_INDEX_MODE 表示返
回第一个匹配项索引, Sort.LAST_INDEX_MODE 表示返回最后一个匹配项索引。
returnInsertionIndex 参数表示如果该方法找不到由values 参数标识的项目,并且此参数为
true,则findItem() 方法将返回这些值的插入点,也就是排序顺序中应插入此项目的。
compareFunction 设置用于查找该项目的比较运算符函数.
使用Sort 对象的findItem 方法代替上面的方法:
private function checkExistence():int { var sort:Sort = new Sort(); return sort.findItem(coll.source, {name:nameTI.text, age:Number(ageTI.text)}, Sort.ANY_INDEX_MODE); }
首先要创建一个Sort,传递一个SortField 对象数组给fields 属性。这些SortField 对象包含
的字符串正是每个ArrayCollection 元素将要用来排序的属性。如要对每个对象的age 属性进
行排序,创建Sort 对象,传递SortField,设置排序字段为age:
private function getOldest():void { var sort:Sort = new Sort(); sort.fields = [new SortField("age", false)]; coll.sort = sort; coll.refresh(); trace(coll.getItemAt(0).age+" "+coll.getItemAt(0).name); }
过滤ArrayCollection
对ArrayCollection 数据进行过滤,设置过滤器移除些不匹配的结果。
将原型为function(item:Object):Boolean 的函数传递给ArrayCollection 的filter 属性。如果返
回true 表示值继续留在ArrayCollection,返回false 表示其值被移除。
filterFunction 属性是由ListCollectionView 类定义,它是ArrayCollection 的父类。当过滤器
函数被传递给继承自ListCollectionView 的任何子类后,这里为ArrayCollection 对象,应用
过滤器后必须调用refresh 方法:
import mx.collections.ArrayCollection; private var coll:ArrayCollection; private function init():void { coll = new ArrayCollection([ {name:"Martin Foo", age:25}, {name:"Joe Bar", age:15}, {name:"John Baz", age:23}, {name:"Matt Baz", age:21}]); coll.filterFunction = filterFunc; coll.refresh(); for(var i:int = 0; i<coll.length; i++) { trace(coll.getItemAt(i).name); } } private function filterFunc(value:Object):Object { if(Number(value.age) > 21) { return true; }rreturn false; }
补:JAVA里的LIST、ARRAYLIST对应到FLEX里可以用ArrayCollection来接收。
eg:通过JAVA写一个连接ORACLE的方法,返回一个ARRAYLIST,该ARRAYLIST里放的一般是一个个的HASHMAP。如果通过RemoteObject(或其他方式)来调用该方法时,FLEX端接收到的肯定是个OBJECT,这个时候可以强制转换成ArrayCollection。然后通过遍历该ArrayCollection,来取得存每条数据的OBJECT(JAVA里的HASHMAP)。
FLEX里没有MAP类,但只要你知道了JAVA里MAP的KEY,那么FLEX里就可以作为OBJECT的一个属性来访问。
评论
1 楼
Sev7en_jun
2011-11-22
lz我有个问题想请教你
比如说 从java哪里获取了一个List对象,那么怎么用下面红色部分标签显示(我已经获取到了List)
<mx:DataGrid>
<mx:dataProvider>
<mx:ArrayCollection id="list" list="{userColls}">
</mx:ArrayCollection> </mx:dataProvider>
</mx:DataGrid>
不使用下面这种方式,就只使用上面那种怎么可以实现吗?
<mx:DataGrid id="list" dataProvider="{userColls}">
比如说 从java哪里获取了一个List对象,那么怎么用下面红色部分标签显示(我已经获取到了List)
<mx:DataGrid>
<mx:dataProvider>
<mx:ArrayCollection id="list" list="{userColls}">
</mx:ArrayCollection> </mx:dataProvider>
</mx:DataGrid>
不使用下面这种方式,就只使用上面那种怎么可以实现吗?
<mx:DataGrid id="list" dataProvider="{userColls}">
发表评论
-
extjs结合flex(flash)的注意事项.
2014-01-02 17:11 2452//for fix bug //flash里使 ... -
flash(flex)crossdomain dtd规范
2013-12-27 13:38 1005dtd文件位置: http://www.macromedia. ... -
flash内嵌在html里面的代码
2013-12-27 09:19 1245<!-- 除IE外都可识别 --> < ... -
FlashBuilder4.5 ADT命令详解(官方)
2011-12-16 17:45 1299http://help.adobe.com/en_US/air ... -
FlashBuilder4.5加入ADT插件
2011-12-16 17:24 1899参考: http://renaun.com/blog/2011 ... -
Flex as3commons log的简单使用
2011-11-28 20:26 1657http://www.as3commons.org/ &l ... -
Flex日志工具汇总
2011-11-27 16:29 1307巨兽 monster [能调试 mobile和web air] ... -
【转】[Flex]我经常使用的Flex Tools 和 Resource
2011-11-22 08:36 1351http://www.k-zone.cn/zblog/post ... -
[转]Flex Socket安全策略<policy-file-request/>及应对方法
2011-08-27 16:43 1789http://hi.baidu.com/dobodo/blog ... -
flash 安全策略文件
2011-08-27 16:31 2199<?xml version="1.0&qu ... -
Request请求头的格式
2011-08-27 15:38 2413每次提交http请求时,请求头是什么样的的格式呢? GET方 ... -
flash Tooltip类
2011-08-27 15:06 1189http://www.flepstudio.com/flash ... -
flash SQLite包装类
2011-08-27 15:00 2285[转]http://www.flepstudio.com/fl ... -
[转](原创)flex解决跨域问题的策略文件的写法
2011-08-04 09:59 1617http://hi.baidu.com/wosinmaiken ... -
[转](整理)flex常用验证控件
2011-08-04 08:30 1431http://hi.baidu.com/wosinmaiken ... -
Flex4.5 skin组建皮肤的应用
2011-07-28 08:52 2871http://www.iyoya.com/2011/06/04 ... -
如何成为一个合格的iOS开发者?
2011-07-17 14:59 1398转:http://www.adobe.com/cn/devne ... -
flex4.5移动设备开发-添加应用背景图片
2011-07-17 10:50 2334【转】http://spy6.blogspot.com/201 ... -
flex4.5移动设备开发-应用访问权限设置
2011-07-16 14:19 1417在构建flex4.5 mobile application的时 ... -
flex4.5移动设备开发-表格效果
2011-07-15 23:12 1869做了个实验,没想到做出表格的效果
相关推荐
本文将详细探讨如何使用`ArrayCollection`作为Flex中的`Tree`控件的数据提供者,以替代通常使用的XML数据源。 首先,让我们理解`ArrayCollection`的概念。`ArrayCollection`是Flex中的一个类,它继承自`...
总之,ArrayCollection在处理数据集合时提供了强大的功能,包括查找最大值和最小值以及排序。通过合理利用这些特性,我们可以有效地管理和操作数据,从而提升应用程序的用户体验。在实际开发中,理解并熟练运用...
`List`组件是Flex中显示数据集合的主要手段之一。它能够根据传入的数据源自动创建相应的项视图。在示例中,`List`组件通过`dataProvider`属性绑定到了`myDP`,这意味着它将自动根据`myDP`中的数据生成列表项。此外,...
在Flex编程中,ArrayCollection是一种常用的集合类,它继承自Array类并添加了对数据绑定的支持。然而,尽管ArrayCollection通常被用作数据绑定的主要工具,但在特定情况下,可能会遇到“ArrayCollection不完全绑定”...
在“flex charts 图形集合实例(读取XML)”中,我们探讨的是如何使用Flex Charts来展示数据,并且这些数据是从XML文件中读取的。XML因其结构化和可扩展性,常被用作数据交换格式。以下是对这一主题的详细说明: 1....
在Flex开发中,ArrayCollection是一种常用的集合类,它继承自Array并添加了对数据绑定和事件处理的支持。然而,当ArrayCollection应用了过滤器后,直接使用`removeItemAt()`方法尝试删除过滤后的数据可能会遇到问题...
这个数据源应该是一个能反映层级关系的数据集合,例如ArrayCollection。 3. **处理选择事件**:我们需要监听Tree组件的选择事件,当用户在Tree中选择一个节点时,更新ComboBox的文本显示。同时,要确保选中的树节点...
BlazeDS允许我们在Flex应用中使用Remoting配置来直接调用Java服务的方法,这样我们就可以在Flex中轻松地获取数据库数据。 在Flex 4中,DataGrid组件是一个强大的工具,用于显示结构化的数据。它可以自动格式化和...
### Flex Repeater标签使用教程 #### 一、引言 在Flex开发中,`Repeater`组件是一个非常实用的功能,它允许开发者根据动态或静态的数据数组,在运行时重复显示一个或多个用户界面组件。这对于创建动态且响应式界面...
在Flex中,数据通常绑定到一个数据集合,如ArrayCollection。当用户选择多个条目后,我们需要收集这些被选中的条目的标识,然后在后台处理删除操作。可以创建一个临时集合来存储选中的条目ID,当用户触发删除操作时...
例如,当新数据到来时,需要触发一个事件,ActionScript代码监听到这个事件后,将新数据添加到数据集合,进而更新曲线图。 综上所述,"flex实时更新曲线图"是一个结合了Flex的图表组件、ActionScript编程、MXML布局...
例如,你可以使用`JSONArray`和`JSONObject`来表示和操作JSON数据,便于与Flex中的ArrayCollection进行数据交换。 总结,Flex4的DataGrid组件在客户端和服务器端的应用涉及到数据的获取、解析和展示,而JSON作为一...
要使用`List`,你需要提供一个数据集,例如`ArrayCollection`,将数据绑定到`List`的`dataProvider`属性。然后,可以通过设置`itemRenderer`属性指定自定义的渲染器来决定列表项如何显示。`List`还支持各种事件,如`...
DataGrid是Adobe Flex提供的一个功能强大的组件,用于显示数据集合,并且支持排序、分页、选择等多种功能。它的列可以自定义,能够绑定到各种数据源,如ArrayCollection或XMLListCollection。 单元格合并通常涉及到...
书中可能详细阐述了组件的使用、自定义以及数据绑定的概念,集合数据与Data Provider的集成也是这个部分的重点,比如ArrayCollection和XMLListCollection作为数据源,可以方便地与可视组件进行数据绑定,实现数据的...
在本教程中,我们将深入探讨Flex的基础知识,包括设计视图和源视图的使用,以及如何创建动态效果、处理事件和进行数据交互。 **设计视图与源视图** Flex 提供了两种工作方式:Design 视图和 Source 视图。Design ...
2. dataProvider:提供选项卡数据的集合,可以是Array、ArrayCollection或其他数据源。 3. allowMultipleSelection:控制是否允许多个TabItem同时被选中。 4. tabFactory:用于创建自定义TabItem实例的函数,实现...
在Flex中,DataGrid通常用于显示数据集中的数据,如数据库记录或者数组集合。而要实现DataGrid中的每一行都有一个单选按钮,这通常是为了实现用户只能选择一行数据的操作。这样的功能在数据筛选、编辑或操作中非常...
2. **数据绑定**:使用Flex的MXML或ActionScript,创建一个`ArrayCollection`或`dataProvider`,它将绑定到DataGrid。这个数据集合需要包含从后端获取的图片数据。 3. **自定义ItemRenderer**:由于DataGrid默认不...