package com.wks.util
{
import com.wks.common;
import flash.events.ErrorEvent;
import flash.events.Event;
import flash.events.EventDispatcher;
import flash.events.IEventDispatcher;
import flash.events.IOErrorEvent;
import flash.events.MouseEvent;
import flash.net.FileFilter;
import flash.net.FileReference;
import flash.net.FileReferenceList;
import mx.containers.Tile;
import mx.controls.Alert;
public class UpLoadImg extends EventDispatcher
{
private var file:FileReferenceList;
private var bro_loc_2:*;
private var photoList:Tile;
private var autoClean:Boolean;
public var fileNum:int;
public var type:String;
public var cakeName:String;
private var tileStyle:Object={width:926,height:417,tileHeight:125,tileWidth:125,backgroundColor:"#00737373",borderStyle:"solid",cornerRadius:5,paddingLeft:5,paddingTop:5};
/**初始化上傳圖片類**/
public function UpLoadImg(type:String, target:IEventDispatcher=null, tile:Tile=null, tileStyle:Boolean=false, isClean:Boolean = false)
{
super(target);
this.type = type;
this.photoList = tile;
autoClean = isClean;
setPhotoListStyle(tileStyle);
this.file = new FileReferenceList();
this.configureListeners(this.file);
var _loc_1:* = new FileFilter(common.uploadTypeName, common.uploadType);
bro_loc_2 = new Array(_loc_1);
}
private function setPhotoListStyle(isSet:Boolean):void
{
if(photoList != null && isSet == true)
{
photoList.width = tileStyle.width;
photoList.height = tileStyle.height;
photoList.tileHeight = tileStyle.tileHeight;
photoList.tileWidth = tileStyle.tileWidth;
photoList.setStyle("backgroundColor",tileStyle.backgroundColor);
photoList.setStyle("borderStyle",tileStyle.borderStyle);
photoList.setStyle("paddingLeft",tileStyle.paddingLeft);
photoList.setStyle("paddingTop",tileStyle.paddingTop);
photoList.setStyle("cornerRadius",tileStyle.cornerRadius);
}
}
/**瀏覽要上傳的圖片**/
public function browseFile():void
{
this.file.browse(bro_loc_2);
}
/**上傳圖片**/
public function uploadFile(tile:Tile = null) : void
{
if(tile == null)
{
tile = photoList;
}
var _loc_3:photo = null;
var _loc_1:* = tile.getChildren();
var _loc_2:int = 0;
while (_loc_2 < _loc_1.length)
{
_loc_3 = _loc_1[_loc_2] as photo;
_loc_3.cakeIndex = (_loc_2+1).toString();
_loc_3.upfile();
_loc_2++;
}
}
private function configureListeners(param1:IEventDispatcher) : void
{
param1.addEventListener(Event.SELECT, this.selectHandler);
param1.addEventListener(IOErrorEvent.IO_ERROR, this.IoErr);
}
private function selectHandler(event:Event) : void
{
if(autoClean)
{
photoList.removeAllChildren();
}
var _loc_3:FileReference = null;
var _loc_4:photo = null;
var _loc_2:int = 0;
while (_loc_2 < this.file.fileList.length)
{
_loc_3 = FileReference(this.file.fileList[_loc_2]);
_loc_4 = new photo();
_loc_4.file = _loc_3;
_loc_4.type = this.type;
_loc_4.cakeName = this.cakeName;
fileNum = fileNum+1;//設置文件個數
photoList.addChild(_loc_4);
_loc_4.addEventListener(MouseEvent.CLICK, this.ShowPic);
_loc_2++;
if(type == "")
{
break;
}
}
}
private function ShowPic(event:MouseEvent) : void
{
return;
}
private function IoErr(event:ErrorEvent) : void
{
Alert.show(common.ImgUpLoadError, common.SystemInfo);
}
}
}
flex upLoadImg
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.