【游客模式】——注册会员,加入11RIA 闪客社区吧!一起见证Flash的再次辉煌……
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
放假了,学习有点懒散,三四天才写好这个练习!
[Actionscript3] 纯文本查看 复制代码 //网络通讯小练习(加载二进制数据);
//这里用到一个特殊的类:ByteArray;
//还要用到Loader类,要注意它和URLLoader有很大区别;
package{
import flash.display.Sprite;
import flash.events.Event;
import flash.display.Loader;
import flash.net.URLRequest;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.utils.ByteArray;
public class LoadBinary extends Sprite{
//两个Loader实例,用来显示加载的图片;
private var loader1:Loader;
private var loader2:Loader;
//定义一个图片纵坐标的值;
private var yint:int=0;
//构造函数中用URLLoader类来加载图片的二进制数据;
public function LoadBinary():void{
var ur:String="aa.swf";
var urlRe:URLRequest=new URLRequest(ur);
var urlLo:URLLoader=new URLLoader();
//设置加载数据的格式(BINARY);
urlLo.dataFormat=URLLoaderDataFormat.BINARY;
//添加侦听器,用来处理加载的数据;
urlLo.addEventListener(Event.COMPLETE,loadFun);
//捕获错误或异常;
try{
trace("数据加载中…");
urlLo.load(urlRe);
}
catch(e:Error){
trace("数据加载有误:"+e);
}
}
//下面是处理数据的方法;
private function loadFun(ev:Event):void{
loader1=new Loader();
//把加载的数据存入变量con中,先用as判断数据类型;
var con:ByteArray=ev.target.data as ByteArray;
//为loader1添加侦听器;
loader1.contentLoaderInfo.addEventListener(Event.COMPLETE,cFun);
//从变量con中加载数据;
loader1.loadBytes(con);
//loader2实例处理数据的方法和loader1类似,还可以用同样的方法添加更多的实例;
loader2=new Loader();
loader2.contentLoaderInfo.addEventListener(Event.COMPLETE,cFun);
loader2.loadBytes(con);
}
//把二进制数据
private function cFun(evt:Event):void{
var lo:Loader=evt.target.loader as Loader;
lo.y=yint;
addChild(lo);
//把纵坐标的值向下平移50像素;
yint+=50;
}
}
}
|