纯AS代码实现可预览本地图片的flash上传客户端(as3.0)
作者 佚名技术
来源 服务器技术
浏览
发布时间 2012-07-07
=_rect.right+5; label.y=_rect.y+25*i; label.width=280; label.height=20; _txts.push(label); this.addChild(label); } _state_txt=getLabel("状态:",getTextFormat(0x333333,12)); _state_txt.x=10; _state_txt.y=BOX_HEIGHT-_state_txt.height-5; this.addChild(_state_txt); //按钮; varbutton:Button; button=getButton("选择文件",80); button.move(20,40); button=getButton("上传文件",80); button.move(105,40); button.enabled=false; //进度条; _progress=newProgressBar(); _progress.move(190,40); _progress.setSize(290,22); _progress.mode=ProgressBarMode.MANUAL; this.addChild(_progress); //文件类型; _filters=[]; varfilter:FileFilter; filter=newFileFilter("所有支持图片文件(*.jpg,*.jpeg,*.gif,*.png)","*.jpg;*.jpeg;*.gif;*.png"); _filters[_filters.length]=filter; filter=newFileFilter("JPEGfiles(*.jpg,*.jpeg)","*.jpg;*.jpeg"); _filters[_filters.length]=filter; filter=newFileFilter("GIFfiles(*.gif)","*.gif"); _filters[_filters.length]=filter; filter=newFileFilter("PNGfiles(*.png)","*.png"); _filters[_filters.length]=filter; _file=newFileReference(); _file.addEventListener(Event.COMPLETE,fileHandler); _file.addEventListener(DataEvent.UPLOAD_COMPLETE_DATA,fileHandler); _file.addEventListener(Event.SELECT,fileHandler); _file.addEventListener(Event.OPEN,fileHandler); _file.addEventListener(ProgressEvent.PROGRESS,fileHandler); _file.addEventListener(SecurityErrorEvent.SECURITY_ERROR,fileHandler); _file.addEventListener(IOErrorEvent.IO_ERROR,fileHandler); _file.addEventListener(HTTPStatusEvent.HTTP_STATUS,fileHandler); _loader=newLoader(); _loader.contentLoaderInfo.addEventListener(Event.COMPLETE,loadHandler); this.addChild(_loader); } publicfunctiongetstate():String{ return_state; } privatefunctionclickHandler(event:MouseEvent):void{ switch(event.target){ case_buttons[0]: _file.browse(_filters); break; case_buttons[1]: _file.upload(newURLRequest(DEFAULT_UPLOAD_PAGE)); _state=STATE_UPLOAD; _buttons[0].enabled=false; _buttons[1].enabled=false; break; } } privatefunctionloadHandler(event:Event):void{ _loader.scaleX=_loader.scaleY=1; varw:uint=_loader.width; varh:uint=_loader.height; if(w>_rect.width||h>_rect.height){ varip:Number=w/h; varlp:Number=_rect.width/_rect.height; _loader.width=(ip>lp)?_rect.width:_rect.height*ip; _loader.height=(ip>lp)?_rect.width/ip:_rect.height; } _loader.x=_rect.x+(_rect.width-_loader.width)/2; _loader.y=_rect.y+(_rect.height-_loader.height)/2; _loader.visible=true; } privatefunctionfileHandler(event:Event):void{ switch(event.type){ caseEvent.COMPLETE: if(state==STATE_CACHE){ _loader.loadBytes(_file.data); } break; caseDataEvent.UPLOAD_COMPLETE_DATA: debug("图片上传完成!"); _buttons[0].enabled=true; _buttons[1].enabled=false; _progress.setProgress(0,1); break; caseEvent.SELECT: _txts[0].text=_labels[0]+_file.name; _txts[1].text=_labels[1]+_file.type; _txts[2].text=_labels[2]+((_file.size>1024*1024)?Math.round(_ |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: 初识AS3:任意播放整首音乐中的某一段下一篇: Flash制作一个简单的计数效果
关于纯AS代码实现可预览本地图片的flash上传客户端(as3.0)的所有评论