手机
当前位置:查字典教程网 >编程开发 >Flex >Flex上传本地图片并提前浏览的实现方法
Flex上传本地图片并提前浏览的实现方法
摘要:经常会设计一个这样的功能,比如更改个性头像,这个个性头像最终需要上传到服务器的文件系统中,但是程序希望在用户选择后直接有个预览,然后用户才进...

经常会设计一个这样的功能,比如更改个性头像,这个个性头像最终需要上传到服务器的文件系统中,但是程序希望在用户选择后直接有个预览,然后用户才进行上传。这个功能技术上其实就是需要对本地的文件能进行读取。在flash player10中有个类FileReference的类可以实现这个功能,而实现对文件读取的接口是load( )函数,要注意的是:

a、这个函数只能在UI操作中使用,比如用户按下按钮。

b、加载进来后的本地文件无法在AS中使用

c、这个接口是一个异步的过程,也就不是马上就加载进来,需要加Listener来操作。

下面是参考代码

复制代码 代码如下:

<?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"

creationComplete="creationCompleteHandler(event)">

<fx:Script>

<![CDATA[

import flash.net.FileReference;

import flash.net.FileFilter;

import flash.events.IOErrorEvent;

import flash.events.Event;

private var fr:FileReference;

private var imageTypes:FileFilter;

private function creationCompleteHandler(event:Event):void {

fr = new FileReference();

imageTypes = new FileFilter("Images (*.jpg, *.jpeg, *.png, *.gif)","*.jpg; *.jpeg; *.png; *.gif;")

fr.addEventListener(Event.SELECT, selectHandler);//增加当打开浏览文件后,用户选择好文件后的Listener

}

private function browseHandler(event:Event):void {

fr.browse([imageTypes]);//打开浏览文件的dialog

}

private function selectHandler(event:Event):void {

fr.addEventListener(Event.COMPLETE, onLoadComplete);//增加一个文件加载load完成后的listener

fr.load(); //加载用户选中文件

}

private function onLoadComplete(e:Event):void

{

imgPhoto.source = fr.data;

}

]]>

</fx:Script>

<s:layout>

<s:BasicLayout/>

</s:layout>

<fx:Declarations>

<>

</fx:Declarations>

<mx:Image id="imgPhoto" visible="true" autoLoad="true" width="1000" height="500"/>

<mx:Button id="btnBrowse" label="Browse" click="browseHandler(event)" />

</s:Application>

【Flex上传本地图片并提前浏览的实现方法】相关文章:

Flex DataGrid 伪合并单元格实现思路

flex调用webservice中的自定义类的方法

Flex中在Tree绑定数据后自动展开树节点的方法

Flex调Javascript打开新窗口示例代码

flex tree自动显示横向滚动条实现代码

如何在Renderer中设置属性 Renderer中设置属性的方法实例

Flex 改变树结点图标的2种方法介绍

flex4获取当前窗口的长度与宽度的方法

Flex 输出文件到本地的两种方法

Flex动态生成可编辑的DataGrid具体实现代码

精品推荐
分类导航