您的位置:首页 > Web前端

FileReference的load()方法加载本地图片

2014-02-17 18:05 260 查看
FileReference 

FileReference 实例的创建方式如下:

当将
new
运算符与
FileReference 构造函数一起使用时:
var myFileReference = new
FileReference();

当调用
FileReferenceList.browse()
方法时,该方法将创建一个
FileReference 对象数组。
在上载操作期间,FileReference 对象的所有属性通过调用
FileReference.browse()

FileReferenceList.browse()
方法来填充。在下载操作期间,
name
属性在调度
select
事件时得到填充,所有其它属性在调度
complete
事件时得到填充。

browse()
方法打开一个操作系统对话框,提示用户选择要上载的文件。
FileReference.browse()
方法允许用户选择一个文件;
FileReferenceList.browse()
方法允许用户选择多个文件。成功调用
browse()
方法后,调用
FileReference.upload()
方法以每次上载一个文件。
FileReference.download()
方法提示用户提供文件的保存位置并开始从远程
URL 进行下载。

FileReference 类和 FileReferenceList 类不允许为
browse()
download()
生成的对话框设置默认文件位置。对话框中显示的默认位置是最近浏览过的文件夹(如果可以确定该位置)或桌面。这些类不允许对已传输的文件进行读取或写入。它们也不允许启动上载或下载的 SWF 文件访问已上载或下载的文件或用户磁盘上文件的位置。

package war
{
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.Loader;
import flash.display.Sprite;
import flash.events.Event;
import flash.net.FileFilter;
import flash.net.FileReference;

public class LoadPic extends Sprite
{
private var file:FileReference = new FileReference();
private var loader:Loader = new Loader();

public function LoadPic()
{
file.browse([new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg;*.jpeg;*.gif;*.png")]);
file.addEventListener(Event.SELECT,onSelect);
}

private function onSelect(evt:Event):void
{
file.addEventListener(Event.COMPLETE,onComplete);
file.load();
}

private function onComplete(evt:Event):void
{
file.removeEventListener(Event.COMPLETE,onComplete);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,onLoadComplete);
loader.loadBytes(file.data);
}

private function onLoadComplete(e:Event):void
{
var tempData:BitmapData=new BitmapData(loader.width,loader.height,false,null);
tempData.draw(loader);
var bitmap:Bitmap=new Bitmap(tempData);
addChild(bitmap);
loader.contentLoaderInfo.removeEventListener(Event.COMPLETE,onLoadComplete);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: