- 浏览: 45374 次
- 性别:
- 来自: 广州
-
最新评论
上文讲到Flex利用Blazeds来上传文件,本文则封装了一个组件用于文件的上传导入,其主要功能有:
1)文件的选择;
2)文件类型的限定,比如只能选择txt文件,图片文件等;
3)文件上传,利用Blazeds;
4)文件导入,利用Blazeds;
5)上传、导入的事件分发;
1、文件上传组件核心代码 flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" width="300" height="28" creationComplete="init()"> --> [Event(name="result", type="event.FileImportEvent")] [Event(name="fault", type=" event.FileImportEvent")] 加载文件
}
/**
* 设置文件过滤,打开文件选择框时刻选择哪些类型的文件
* FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg;*.jpeg;*.gif;*.png")
*/
public function set fileFilter(fileType:String):void{
if(!StringUtil.isEmpty(fileType) && StringUtil.trim(fileType).length>3){
_fileFilter = [];
_fileFilter.push(new FileFilter("("+fileType+")",fileType));
}
}
// Property: maxFileSize,Flash Player Limit 100 mb
private var _maxFileSize:Number = 1024*1024*20;
[Bindable]
/**
* 读取和设置文件最大尺寸,单位为Byte,1K = 1024Byte,默认值为20M
*/
public function get maxFileSize():Number
{
return _maxFileSize;
}
public function set maxFileSize(size:Number):void
{
_maxFileSize = size;
}
private function checkFile():Boolean{
var blnResult:Boolean = true;
if(StringUtil.isEmpty(txtFileInfo.text)){
Alert.show("请选择要上传的文件!");
return false;
}
if(file.size>_maxFileSize){ //文件大小验证失败
Alert.show(StringUtil.format("该文件尺寸{0} 超出最大尺寸 {1}.",file.size/1000,_maxFileSize/1000));
blnResult = false;
}
if(file.data==null){
Alert.show("文件正在加载中,请稍等!");
blnResult = false;
}
return blnResult;
}
protected function btnBrowse_clickHandler(event:MouseEvent):void
{
file.browse(_fileFilter);//打开文件选择框
}
protected function btnDelete_clickHandler(event:MouseEvent):void
{
//删除远程服务器的文件
//清空txtFileInfo
txtFileInfo.text = "";
txtFileInfo.toolTip = "";
} protected function ro_resultHandler(event:ResultEvent):void { this.dispatchEvent(new FileImportEvent(FileImportEvent.RESULT,event.resul t)); } protected function ro_faultHandler(event:FaultEvent):void { this.dispatchEvent(new FileImportEvent(FileImportEvent.FAULT,null,event.f ault)); } public function importFile(headers:Array):Boolean{ var isSuccess:Boolean = checkFile(); if(isSuccess){ ro.importFile(file.data,headers,file.type); } return isSuccess; } public function uploadFile():Boolean{ var isSuccess:Boolean = checkFile(); if(isSuccess){ ro.uploadFile(file.data,file.type); } return isSuccess; } ]]>
2、FileImportEvent事件 package event { import flash.events.Event; import mx.rpc.Fault; publicclass FileImportEvent extends Event { publicstaticconst RESULT:String = "result"; publicstaticconst FAULT:String = "fault"; // privatevar _result:Object; privatevar _fault:Fault; // publicfunction FileImportEvent(type:String, result:Object=null, fault:Fault=null) { super(type,true); this._result = result; this._fault = fault; } // publicfunctionget result():Object{ return _result; } publicfunctionset result(value:Object):void{ _result = value; } // publicfunctionget fault():Fault{ return _fault; } publicfunctionset fault(value:Fault):void{ _fault = value; } } } 3、示例 flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="800" minHeight="600" creationComplete="init()" width="370" height="180" xmlns:fileupload="whh.flex.controls.fileupload.*">
发表评论
-
字符串相似度的比较C#实现
2012-07-06 09:51 942由于最近的项目需要,有幸接触到了这方面的算法问题,字符串相 ... -
windows 正则表达式 工具 RegexBuddy
2012-07-06 09:45 807windows下的正则表达式工具,推荐的是:RegexBu ... -
Java高级(正则表达式)【Day8】
2012-07-06 09:37 689目标 回顾 Java 面向对象编程思想 回顾集合排 ... -
ARGUMENT 76 Luxess 对改善皮肤是否有显著效果
2012-07-06 09:30 679TOPIC: ARGUMENT76 - The follo ... -
JS构建日期控件
2012-07-05 20:45 656JS构建的日期控件,做个抛砖引玉的作用,可能不适合很多的浏 ... -
SWT/JFace常用组件----布局管理器
2012-07-03 13:43 917在 Java 中, GUI 程序开发的目标之一是跨平台,而 ... -
Flex ColumnChart verticalAxis 中的title在变换皮肤时的异常
2012-07-02 10:30 642在ColumnChart 中添加了title的显示,但在更 ... -
Flex 4架构的组件开发
2012-07-02 10:30 474Flex 4架构的组件开发 作者:Michael Labr ... -
Flex文件上传
2012-07-02 10:30 423今天花了一点时间 ... -
Flex拓扑图的设计(二)机房设计
2012-07-02 10:29 598flex以及其优越的交互性,在flex3的时候已经得到大家 ... -
用flex库资源的理由
2012-07-01 00:07 429Adobe Flash Builder 4 简体中文正式版 ... -
Flex 设计模式无法加载 as3commons-logging-1.1.1.swc。它可能与此 SDK 不兼容,或者无效。
2012-07-01 00:07 717Flex 设计模式无法加载 as3commons-lo ... -
Flex是咋回事之三 谁用谁知道
2012-07-01 00:06 666一项技术,从概念 ... -
Flex学习笔记(2)
2012-07-01 00:06 627学习中遇到转换错误 TypeError: Error ...
相关推荐
《自封装Flex文件上传组件FileInput详解》 在IT行业中,开发用户友好的文件上传功能是常见的需求。本文将深入探讨一个自封装的Flex文件上传组件——FileInput,旨在帮助开发者更好地理解和应用这一工具,提升项目的...
Flex文件上传技术是基于Adobe Flex框架实现的一种交互式文件上传方式,常用于GIS(Geographic Information System,地理信息系统)这样的应用中,以便用户能够方便地上传地理数据、地图图像等文件。在我负责的GIS...
标题 "flex 上传excel 导入数据库" 涉及的技术点主要集中在使用Adobe Flex进行文件上传,特别是Excel文件,并将其数据导入到数据库中。Flex是一种开源的RIA(富因特网应用程序)开发框架,使用MXML和ActionScript...
Flex是Adobe公司开发的一种基于ActionScript 3.0的开源框架,主要用于构建富互联网应用程序(RIA)。在Flex中,上传组件是...记住,实际的文件上传逻辑通常需要后端服务的支持,这部分不在Flex组件本身,但同样重要。
在实际开发中,为了部署和测试此Flex4+PHP文件上传解决方案,你需要安装Flash Builder 4.5,导入提供的FileUpload工程,配置服务器端的PHP环境,确保服务器支持Flash Player运行,然后进行编译和测试。完成这些步骤...
导入这个项目后,可以直接运行并测试文件上传功能,这对于学习和理解Flex3与Java之间的文件上传交互非常有帮助。在实际应用中,可以根据具体需求进行相应的定制和优化,比如添加多文件上传、断点续传等功能。
在Flex开发中,导入Excel文件是一项常见的需求,特别是在数据处理和可视化应用中。Flex是一种基于ActionScript 3.0的开放源代码框架,用于构建富互联网应用程序(RIA)。要实现Flex导入Excel文件的功能,通常会涉及...
通过这种方式,Flex与JavaServlet的集成使得我们能够跨平台地处理图像数据,将Flex应用程序的组件快照导出为实际的图片文件。这种技术在需要将用户界面截图保存或分享的场景中非常有用,例如在设计工具、教学演示...
Flex上传文件夹插件是一种基于Adobe Flex技术的组件,它扩展了Flex应用程序的功能,使得用户能够轻松地上传整个文件夹,而不仅仅是个别文件。在传统的Web应用中,上传文件通常局限于单个文件的选择,而Flex上传...
- **FileReference**: Flex中用于处理文件上传的主要类,可以通过其提供的方法来打开文件选择对话框并获取用户选择的文件。 - **ByteArray**: 用于存储文件数据,通常在上传前将文件转换为字节数组形式。 - **...
本知识点主要聚焦于Flex3如何实现数据的读写操作,特别是与Microsoft Excel文件的交互,即“Flex3ReadWriteExcel(flex3导入导出excel表格)”。这在实际业务场景中非常常见,例如数据分析、报表生成以及数据交换等。 ...
这涉及到多个技术点,包括文件上传、Excel数据读取以及与Flex组件的交互。 首先,我们需要创建一个Flex界面,提供一个文件输入控件让用户选择要导入的Excel文件。在`CustomerImport.mxml`这个文件中,可能会包含一...
【Flex+Java Servlet文件上传实例】是一个典型的Web应用程序开发中的技术组合,主要用于实现用户通过前端界面上传文件到服务器的功能。Flex是一种基于ActionScript的富互联网应用程序(RIA)开发框架,而Java ...
这篇博文“Flex利用as3xls导入excel数据表”探讨了如何在Adobe Flex项目中读取和导入Excel(.xls)文件的数据,以便在Flex应用程序中进行进一步处理或展示。Flex是一个开源的、基于ActionScript 3的框架,用于构建富...
需要注意的是,文件上传需要处理跨域问题,确保符合同源策略。 5. **生成多级树**: 在Flex中,可以使用`mx.controls.Tree`组件来展示层次结构的数据。多级树通常需要一个数据模型来表示层级关系,例如使用`mx....
在使用flex-iframe-1.4.6时,开发者需要了解如何将库导入到他们的Flex项目中,这通常涉及到添加库的SWC文件到构建路径或者通过MXML或ActionScript代码引用库中的类。同时,理解如何使用提供的API来创建、配置和控制...
这个下载可能包含了一个预编译的SWC库文件,用于在Flex项目中直接导入,还可能包括源代码和其他相关资源,以便开发者根据需要进行定制。 集成FCKEditor到Flex 4项目中,通常涉及以下步骤: 1. **导入FCKEditor库**...
在Flex中,进度条组件通常用于显示应用程序执行的某个任务的进度,如数据加载、文件上传或计算过程。Flex标准库中包含了多种进度条组件,如HProgressBar(水平进度条)和VProgressBar(垂直进度条),这些组件可以...
2. **数据上传与服务发布**:将数据导入到iServer Java,发布为地图服务,以便于在Flex应用中调用。 3. **开发Flex客户端**:使用Flex Builder或IntelliJ IDEA等工具,创建新的Flex项目。引入必要的库,如Sjwl.h和...
private var stateText:String = "请选择一个文件上传"; protected override function createChildren():void { super.createChildren(); file.addEventListener(Event.SELECT, file_select); file....