Flex Framework Fundamentals
转自:http://www.cnblogs.com/sharplife/archive/2007/09/03/880641.html
最近看时学习Flex应用,开始对Flex和Flash的关系有些模糊,读了Oreilly的Programming Flex
2才算是明白些,现记下。
1、Flex应用程序的生命周期
Flex应用就其根本上讲就是Flash应用,只不过其是基于Flex
Framework(由ActionScript写就)开发的。Flex应用程序的根对象的是SystemManager(不是我们在flex应用上看到的Application根元素),继承自flash.dispaly.MovieClip—flash
player display type,MovieClip是一种支持timeline基本元素帧frame的对象,在Flex
Framework中SystemManager是特殊的,含有两帧(其他component都是一帧的),分别是preloader和真正的Application,preloader帧可以迅速下载下来并用于显示应用下载进度,一旦Flex应用的SystemManager实例进入第二帧,将创建Flex主应用application实例并赋予本身的属性application(在进入第二帧之前是null),自此application(flex主应用)的内部生命周期、事件开始运作:
preinitialize:application已经实例化但尚未创建任何child
component
initialize:已经创建child component但对其进行布局(lay
out)
creationComplete:application已经完成实例化并完成所有child
component的布局
SystemManager有一个topLevelSystemManager对象,指向一个SystemManager实例,是所有当前在flash
player运行的任何东西的根(root),如果flex被作为主应用加载到flash
player则上述属性将指向其本身(self-refrencing),但当flex应用是被另一flex应用载入的,其自身的SystmenManager的topLevelSystemManager属性则不是自引用了,而是指向其父应用的SystemManager实例。所有UIComponent的子类都有一个systemManager属性指向应用的SystemManager实例,在被SystemManger实例监听的component的事件发生冒泡时,其将拥有事件处理链上最后的处理权。
2、Flash palyer和Framwork的区别
Flash
player是Flex应用和flash应用的运行环境,两应用对其拥有完全平等的操作权(通过Flash
player提供的API),两应用形成的.swf文件在flash
player中是同样的表现,不同的不是应用的内容而是其各自的创建方式。Flex的Framework在开发和运行之间为应用提供了一层抽象,Flex应用编译时会将必要的framwork
library编译进.swf文件(同样影响应用文件的大小等),主要的flash player class当然不会被编译到
相关文档:
用FLEX如何取浏览器地址栏中的域名信息?我查找到两种方法:
第一种方法是用ExternalInterface.call('window.location.href.toString'),它的值就是地址栏中的域名
有以下几点需要注意:
1.当Flash和加载它的网页不同域时,需要在网页在 PARAM 或 EMBED 标签中进行设置AllowScriptAccess 为“always”
关于 ......
Axis简介
技术前沿 2008-04-07 22:42 阅读104 评论0
字号: 大大 中中 小小
1.SOAP简介
企业系统内部各个系统之间的信息交换一直是一个难题,在过去有DCOM、CORBA等解决方案,但都不是很完美,不是太复杂就是有缺陷。现在则较流行SOAP(全称:Simple O ......
1:假如你要深复制一个类A
public class A
{
public var vo:B
}
你首先要做的是注册类,例如:
public static function registerClass():void
{
//把子类注册
PackUtil.registerClass(B);
}
//接下来就是克隆:
var cloneA:A=clone(A);
cloneA就是我 ......
关键词:文件上传,文件下载,FileReference,FileReferenceList,FileFilter
在项目开发过程中,经常会遇到文件上传下载的问题。但在flex中由于安全沙箱的原因,flex程序不能直接访问本地文件。但是flex SDK中提供了FileReference和FileReferenceList两个类,可以通过这两个类来实现,这两个类位于flash.net包中。
一、 ......
初学flex,遇到一个问题‘在datagrid的一列中利用它的值转换显示不同的图片’,在网上搜了搜问了问,解决了哎,解决办法贴出来,希望对其他人有帮助,
利用datagrid的labelFunction解决的,如下:
在datagrid的
<mx:DataGridColumn dataField="level" labelFunction="formatiImg"/>
/* ......