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

    技术2022-05-20  47

    <?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.*; private var fileReference:FileReference=new FileReference(); private var byteArray:ByteArray; private var bitmapData:BitmapData; private var loader:Loader=new Loader(); private function init():void { fileReference.addEventListener(Event.COMPLETE,fileReferenceCompleteHandler); } private function fileReferenceCompleteHandler(e:Event):void { byteArray = fileReference.data; loader.contentLoaderInfo.addEventListener(Event.COMPLETE,loaderCompleteHandler); loader.loadBytes(byteArray); } private function loaderCompleteHandler(e:Event):void { var bitmap:Bitmap = Bitmap(loader.content); bitmapData = bitmap.bitmapData; img.source = bitmap; } private function fileReferenceSelectHandler(e:Event):void { fileReference.load(); } private function btnClick():void { fileReference.browse(); fileReference.addEventListener(Event.SELECT,fileReferenceSelectHandler); } ]]--> </mx:Script> <mx:Panel width="456" height="345" horizontalCenter="0" verticalGap="0" horizontalAlign="center" verticalAlign="middle"> <mx:Image id="img" width="263" height="234"/> <mx:Button label="选择..." click="btnClick()"/> </mx:Panel> </mx:Application>

     

    FileReference 对象在加载过程中将调度以下事件。

    open   事件 (Event.OPEN ):在加载操作开始时调度。

    progress   事件 (ProgressEvent.PROGRESS ):以字节为单位从文件读取数据时定期调度。

    complete   事件 (Event.COMPLETE ):加载操作成功完成时调度。

    ioError   事件 (IOErrorEvent.IO_ERROR ):如果由于在打开文件或从文件读取数据时发生输入/输出错误而使加载过程失败,则调度此事件。

    import flash.net.FileReference; var fileRef:FileReference = new FileReference();

    调用  FileReference.browse()   方法,该方法将打开一个对话框,提示用户从本地文件系统选择一个文件。发生这种情况之后,接下来通常要调用  FileReference.upload()   方法,将文件上载到远程服务器,或调用FileReference.load()   方法,打开本地文件。

    调用  FileReference.download()   方法。这会打开一个对话框,让用户选择用于保存新文件的位置。然后从服务器下载数据,并将数据存储在新文件中。

    调用  FileReference.load()   方法。此方法使用  browse()   方法开始从之前所选的文件中加载数据。直到browse()   操作完成(用户选择了文件)时,才能调用  load()   方法。

    调用  FileReference.save()   方法。此方法将打开一个对话框,提示用户在本地文件系统上选择一个文件位置。然后此方法将数据保存到该指定位置。

    注:  一次只能执行一个 browse()、download()或 save()

     

      操作,因为在任何时刻都只能打开一个对话框。 单文件上传预览 注意:Flash Player填写10.0


    最新回复(0)