<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/halo" minWidth="1024" minHeight="768">
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
//添加对象
public function insertCollection():void{
//方法1
//一个花括号代表一个对象
var selectType01:String = "东京";
var selectType02:String = "横滨";
var oneArrayCollection:ArrayCollection = new
ArrayCollection([{label:selectType01, data:1}, {label:selectType02,
data:2}]);
//方法2
var twoArrayCollection:ArrayCollection;
var array:Array = new Array();
for(var i:Number = 0; i < 10; i++){
array.unshift({city:"B" + i, data:i, size:1000 + i});
}
twoArrayCollection = new ArrayCollection(array); //长度为10,也就是有10个对象
//方法3
var threeArrayCollection:ArrayCollection = new ArrayCollection();
for(var j:Number = 0; j < 5; j++){ //添加5个对象
threeArrayCollection.addItem({name:"C" + j, sequence:j, ok:"hello" + j});
}
trace(threeArrayCollection[2].ok); //hello2
//方法4,在指定的索引处添加对象
threeArrayCollection.addItemAt({name:"K", sequence:"A", ok:"H"},2);
trace(threeArrayCollection[2].ok); //H
//方法5,在制定的索引处添加对象
threeArrayCollection.setItemAt({name:"W", sequence:"X", ok:"Q"}, 5);
trace(threeArrayCollection[5].sequence); //X
}
//删除对象,ArrayCollection相当于数组(数组集合)
public function deleteCollection():void{
var delCollection:ArrayCollection = new ArrayCollection();
for(var j:Number = 0; j < 5; j++){ //添加5个对象
delCollection.addItem({name:"DEL" + j, sequence:j, ok:"hello" + j});
}
for(var value:String in delCollection){
trace(delCollection[value].ok);
}
delCollection.removeItemAt(2); //删除第三个元素
for(var value2:String in delCollection){
trace(delCollection[value2].ok);
}
delCollection.removeAll(); //全部删除
for(var value3:String in delCollection){
trace("=========");
trace(delCollection[value3].ok);
}
}
//查询对象
public function selectCollection():void{
var twoArrayCollection:ArrayCollection;
var array:Array = new Array();
for(var i:Number = 0; i < 10; i++){
array.unshift({city:"B" + i, data:i, size:1000 + i});
}
twoArrayCollection = new ArrayCollection(array); //ArrayCollection的构造方法有参数的话则一定是Array对象作为参数
if(twoArrayCollection.contains(array[1])){
var objIndex:int = twoArrayCollection.getItemIndex(array[1]); //返回该项目的索引
trace(objIndex);
}
// trace("OK");
// }
}
]]>
</fx:Script>
<mx:Button id="insertID" x="320" label="添加对象" click="insertCollection();"/>
<mx:Button id="deleteID" x="450" label="删除对象" click="deleteCollection();"/>
<mx:Button id="seleteID" x="600" label="查询对象" click="selectCollection();"/>
<fx:Declarations>
<!-- Place non-visual elements (e.g., services, value objects) here -->
</fx:Declarations>
</s:Application>
分享到:
相关推荐
总的来说,这个实例展示了在ActionScript环境中如何有效地将常用的数据结构ArrayCollection转换为XML,这对于数据的交换和存储具有重要的实践意义。熟悉并掌握这类操作能提升你在开发富互联网应用程序(RIA)时的...
3. **使用ArrayCollection的方法**:任何时候修改ArrayCollection的内容,都应使用ArrayCollection提供的方法,而不是直接操作Array。 4. **监听数据变化**:如果使用了过滤或排序,确保在改变后重新触发数据绑定,...
在“flex操作数据的实例”这个主题中,我们将深入探讨如何在Flex中处理和操作数据。 Flex的数据操作主要涉及以下几个方面: 1. **数据绑定**:Flex中的数据绑定是连接UI组件和应用程序数据模型的关键机制。通过...
在本文中,我们将深入探讨基于Adobe Flex的DataGrid组件的应用实例。Flex是一种强大的富互联网应用程序(RIA)开发框架,主要用于构建交互式、响应式的Web应用。DataGrid是Flex中的一个核心组件,它允许开发者以表格...
在按钮的click事件中,我们可以调用ArrayCollection的方法来操作数据。 ```mxml ()"/> ()"/> ()"/> <![CDATA[ private function addData():void { dataList.addItem({name: "新条目"}); } private function...
总结来说,本实例涉及了Flex DataGrid的双击事件处理,通过监听`doubleClick`事件,获取选中行的数据,并根据这些数据执行特定的操作。同时,压缩包中的文件可能提供了客户端和服务器端的实现细节,供开发者参考和...
在Flex编程领域,DataGrid组件是开发者们常用的数据展示工具,尤其在处理大量结构化数据时,它能提供高效、可定制化的...实例源码"AdvDataGridDemo"是一个很好的学习资源,可以帮助开发者将理论知识转化为实践操作。
5. 事件处理:学习如何监听和响应用户交互,以更新数据或执行其他操作。 通过深入研究这个Flex实例,你不仅可以提升对Flex框架的理解,还能掌握创建动态数据驱动的RIA所需的关键技能。在实际项目中,这些技能将有助...
这可能是ArrayCollection、XMLListCollection或其他支持数据绑定的数据结构。数据提供者(如PagingDataProvider)则负责在分页操作中管理数据源,确保只加载当前页面所需的数据。 2. **使用Grid或DataGrid组件**:...
在本实例中,我们将深入探讨如何利用Flex 4实现Combobox的输入过滤功能,这将帮助用户在大量数据中快速定位所需选项。 1. **Combobox基础** Flex中的Combobox由两部分组成:一个可编辑的文本输入字段和一个下拉...
我们遍历每一个`node`节点,为每个节点创建一个新的Object实例,将`node`的属性`Country`, `Gold`, `Silver`, `Bronze`分别赋值给Object的相应属性,最后将这个Object添加到ArrayCollection中。 ### 方法二:使用...
7. **错误处理**:处理可能出现的异常情况,如数据加载失败、用户非法操作等,确保程序的健壮性。 在实际项目中,你可能会遇到的问题包括数据不更新、刷新不完全或性能瓶颈等。通过理解和熟练运用以上知识点,可以...
数据源可以是ArrayCollection或其他支持的数据结构,其中包含要显示的对象。 - **配置属性**:Explorer有许多可配置的属性,例如`columns`用于定义列布局,`sortField`用于设置默认排序字段,`allowMultipleSort`...
由于ArrayCollection本质上是一个接口,它不包含排序方法,但我们可以借助 Flex的排序和过滤工具来操作其内部的Array。 1. **排序原理**:在Flex中,我们可以使用`ArrayCollection.sort`方法配合`Sort`对象来实现...
3. **处理文件**:在`change`事件的回调函数中,你可以访问`event.target.files`属性,它是一个ArrayCollection,包含了用户选择的所有文件。对这个集合进行遍历,为每个文件创建一个FileReference对象。 4. **上传...
这里使用了`mx.collections.ArrayCollection`来存储`AdminVO`实例,以便于进行数据操作。 ```as // AdminVO.as [Bindable] public class AdminVO { public var username:String; public var password:String; ...
var employees:ArrayCollection = event.result as ArrayCollection; // 处理查询结果 } function onQueryError(event:FaultEvent):void { trace("查询出错:" + event.fault.message); } ``` 六、优化与安全 ...
`dataProvider`是`ICollectionView`接口的实例,可以是`ArrayCollection`或`XMLListCollection`。对于XML数据,我们将使用`XMLListCollection`: ```actionscript var dataProvider:XMLListCollection = new ...
在Flex中,我们可以使用`mx.collections.ArrayCollection`来存储和管理数据。 3. **创建Tree组件**:在`tree.mxml`中,我们会创建一个`Tree`组件,并将其数据源绑定到上面定义的数据模型。通过设置`dataProvider`...