易截截图软件、单文件、免安装、纯绿色、仅160KB

flex类的深复制(扩展)


1:假如你要深复制一个类A
public class A
{
  public var vo:B
}
你首先要做的是注册类,例如:
public static function registerClass():void
  {
  //把子类注册
   PackUtil.registerClass(B);
  }
//接下来就是克隆:
  var cloneA:A=clone(A);
cloneA就是我们想要的对象了。
//****************克隆的实现方法***********************//
//克隆一个vo对象
  public  static function clone(o:Object):Object
  {
   var qClassName:String = getQualifiedClassName(o);
            var objectType:Class = getDefinitionByName(qClassName) as Class;
            registerClassAlias(qClassName, objectType);
            var copier : ByteArray = new ByteArray();
            copier.writeObject(o);
            copier.position = 0;
            return copier.readObject();
  }
  
  //向amf注册类,以便反转的时候能找到该类
  public  static function registerClass(classObj:Object):void
  {
     var qClassName:String = getQualifiedClassName(classObj);
            var objectType:Class = getDefinitionByName(qClassName) as Class;
            registerClassAlias(qClassName, objectType);
  }


相关文档:

flex时序图示例

<?xml version="1.0" encoding="utf-8"?>
<!-- Simple example to demonstrate the DateTimeAxis class. -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml">
<mx:Script>

import mx.collections.ArrayCollection;
......

Flex编译参数

Flex编译参数
accessible=true|false 是否具有可理解性(如为残疾人提供方便的性能)
actionscript-file-encoding | 设置文件编码,如Shitf_JIS
advanced | mxmlc -help advanced,如这样的高级参数
allow-source-path-overlap=true|false | 验证source-path中定义的路径是否出现重叠,出现互相包含的现象
as3=true|fa ......

重写flex组件

一、为什么要重写组件
1、在FLEX已有组件无法满足业务需求,或是需要更改其可视化外观等特性时,直接进行继承扩展。举例,继承BUTTON组件的长文本却不自动换行的自定义控件。
2、为了模块化设计或进一步重用,需要对FLEX组件进行组合。比如一个包括TEXTAREA,BUTTON的复合控件。
二、重写组件需要经常换位思考的三个角色 ......

Flex中本地图片上传及上传文件前的预览

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" fontSize="12" creationComplete="init()">
<mx:Script>
<!--[CDATA[
import mx.utils.*;
import flash.net.*;
......

Flex读取外部XML中文乱码解决办法

用URLLoader加载XML,然后将data转化为ByteArray
用byteArray.readMultiByte(bytes.length,"utf-8")
然后将转化后的字符串再强制转化为XML
var loader:URLLoader = new URLLoader();
loader.dataFormat = URLLoaderDataFormat.Binary;
var urlRequest:URLRequest = new URLRequest(source);
loader.addEventListener( ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号