Flex 带进度条的文件上传
来源:互联网 发布:淘宝投诉卖家盗用图片 编辑:程序博客网 时间:2024/05/16 07:36
1.DataLoader.as
package
{import flash.events.ErrorEvent;
import flash.events.Event;
import flash.events.EventDispatcher;
import flash.events.IEventDispatcher;
import flash.events.IOErrorEvent;
import flash.events.SecurityErrorEvent;
import flash.net.URLLoader;
import flash.net.URLRequest;
import mx.collections.ArrayCollection;
[Event(name="yes",type="ContentEvent")]
[Event(name="no",type="ContentEvent")]
public class DataLoader extends EventDispatcher
{
private var _loader:URLLoader;
public function DataLoader(target:IEventDispatcher=null)
{
super(target);
_loader.addEventListener(Event.COMPLETE,onComplete);
_loader.addEventListener(IOErrorEvent.IO_ERROR,onError);
_loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR,onError);
}
private function onComplete(event:Event):void{
var users:ArrayCollection=new ArrayCollection();
for each(var xml:XML in (_loader.data).user){
users.addItem(xml.@name+"-"+xml.@site);
}
var evt:ContentEvent=new ContentEvent(ContentEvent.YES);
evt.users=users;
this.dispatchEvent(evt);
}
public function load(url:String):void{
_loader.load(new URLRequest(url));
}
private function onError(event:ErrorEvent):void{
var evt:ContentEvent=new ContentEvent(ContentEvent.NO);
evt.error=event.text;
this.dispatchEvent(evt);
}
public function get loader():URLLoader
{
return _loader;
}
public function set loader(value:URLLoader):void
{
_loader = value;
}
}
}
2.ProgressBar.mxml
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">
<fx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.events.BrowserChangeEvent;
import mx.events.FlexEvent;
public var file:FileReference=new FileReference();
protected function upload_clickHandler(event:MouseEvent):void
{
if(file.size>0){
file.load();
}
}
protected function panel1_creationCompleteHandler(event:FlexEvent):void
{
file.addEventListener(Event.SELECT,fileselect);
file.addEventListener(Event.COMPLETE,filecomplete);
file.addEventListener(ProgressEvent.PROGRESS,fileprogress);
}
private function filecomplete(e:Event):void{
var bytearray:ByteArray=new ByteArray();
bytearray=file.data;
bytearray.position=0;
Alert.show("上传成功!");
}
private function fileprogress(e:ProgressEvent):void{
pb.label="已上传"+Math.round(100*e.bytesLoaded/e.bytesTotal)+"%";
pb.setProgress(Math.round(100*e.bytesLoaded/e.bytesTotal),100);
}
[Bindable]
private var msg:String="请选择文件";
private function fileselect(evt:Event):void{
msg=file.name;
}
]]>
</fx:Script>
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
<s:Panel x="252" y="87" width="250" height="200" title="文件上传" creationComplete="panel1_creationCompleteHandler(event)">
<s:TextInput x="20" y="17" text="{msg}"/>
<s:Button x="168" y="18" label="浏览" click="file.browse();"/>
<mx:ProgressBar id="pb" x="10" y="91" width="138" labelPlacement="center"/>
<s:Button x="168" y="91" label="上传" click="upload_clickHandler(event)"/>
</s:Panel>
</s:Application>
- Flex 带进度条的文件上传
- Flex带进度条的多文件上传(基于Servlet)
- Flex带进度条的多文件上传(基于Servlet)
- flex多文件上传带进度条
- Flex 带进度条上传文件代码
- Flex +java 多文件上传带进度条
- 带进度条的文件上传
- 带进度条的文件上传
- 带进度条的文件上传
- Flex 多文件上传带进度条(演示,源码)
- 带进度条文件上传
- 带进度条的 Fileupload 上传文件
- 多文件上传带进度条的
- java文件上传带进度条的
- android实现带进度条的文件上传
- XMLHTTPRequest实现带进度条的文件上传
- struts2实现带进度条的文件上传
- java文件上传带进度条的
- 霓虹灯2
- Linux下高并发socket最大连接数所受的各种限制
- Jdbc 连接 Oracle 的常用写法,实现数据查询.
- 20131209这是我成为程序员道路上的第二天
- 我们要向勇于变革的人致敬
- Flex 带进度条的文件上传
- 编译器如何工作?
- 银行家安全算法
- 银行业使用二维码识别客户信息的应用
- android中editText限制输入(小数和整数篇)
- 游戏登陆界面完整版
- UITouch错误案例
- G题
- java枚举类型enum的使用