Flex 集合(ArrayCollection)
关键字: flex, arraycollection
集合是ActionScript 中功能强大的基于索引的数组组件,添加了如对内容进行排序等功能,
操作数组的读取位置,创建经过排序的数组视图。集合也能通知其任意事件监听器监听其数
据是否改变,以及任何数据项被添加到源数组时可执行自定义逻辑。当数据改变时可通知其
监听器,这是集合的新功能,叫数据绑定,还有就是允许DataGrid 和List 组件对其内容进
行排序和过滤。集合是使用数据驱动控件以及从数据库返回的服务器端服务的重要内容。
经常被使用的两个集合类型是ArrayCollection 类XMLListCollection 类。ArrayCollection 是
Array 的包装类,提供更方便的如添加和移除数据项以及能够创建游标启用要轻松地存储数
组中的最后读取的位置等方法。而XMLListCollection 是XML 对象的包装类,提供的功能
有:根据索引访问数据,添加新对象以及游标等方法。XMLListCollection 对于处理XML 对
象以及经常需要解析XML 为数组时特别有用。
使用addItemAt 或addItem 方法插入对象到ArrayCollection ,
getItemIndex 或contains 方法用于检测数据项是否已存在于数组中,而ArrayCollection 的sort
属性是对ArrayCollection 排序以及通过某个字段决定接收第一个或最后一个数据。
Flex代码
<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>
<mx:Script>
<![CDATA[
import mx.collections.SortField;
import mx.collections.Sort;
import mx.collections.
相关文档:
Windows
设置环Path境变量,加入flex的SDk的bin目录路径,如:f:\flex_sdk_3\bin。设置好了之后,打开命令行,定位到项目目录,输入如下命令:mxmlc 项目名.mxml。如果此时出现了“Error:could not find JVM”,这时需要手动指定JRE路径,打开Flex3 SDK的bin目录,用文本编辑器打开jvm. ......
进入年末,项目也开发得差不多了,只是偶尔需要出差安装我们系统,当然出差是男人们的事,也就不会让我出差了,因而最近时间比较充裕,就借此机会学习了一下Flex。刚开始学,是根据Flex3权威指南的视频教程来的,第一讲学完了,感觉还比较容易,第二讲一直没下下来,所以先对第一讲学的做个笔记。
一、新建工程:File&mdas ......
flex中使用socket与其他语言(如Java)socket交互的例子。
自从Adobe Flash Player升级到9.0.124后,由于安全策略的修改,原来的socket连接方式将不能被使用,而必须采用新的安全策略方式来验证,具体的过程如下:
1.首先检测服务端的843端口是否提供安全策略文件;
&n ......
废话不说,直接代码部分代码摘抄自网上,在此想原作者表示感谢
1、服务端 uploadFile.ashx
<%@ WebHandler Language="VB" Class="UploadFile" %>
Imports System
Imports System.Web
Imports System.Web.HttpServerUtility
Imports System.IO
Imports System.Web.HttpRequest
Public Class UploadFile : Impl ......
flex和C++服务器通信。因为安全沙漏问题,当swf位于A服务器,C++服务器程序位于B服务器时。
这时swf和B服务器建立Socket建立连接会产生跨域问题。
解决方法如下
swf建立socket时会先发起一个请求跨域文件的请求:"<policy-file-request/>"
服务器接收到后发送字符串
<?xml version="1.0"?>
<cross-doma ......