0
votes

I am trying to load a image from my pc to stage in flash as3. File browse working fine but it never fire complete event here are the code

btneditimage.addEventListener(MouseEvent.CLICK, btneditimage_click);
var fileRef:FileReference = new FileReference();
function btneditimage_click(evt:MouseEvent)
{
var imageTypes:FileFilter = new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg; *.jpeg; *.gif; *.png");
var allTypes:Array = new Array(imageTypes);
fileRef.browse(allTypes)

fileRef.addEventListener(Event.COMPLETE, image_loadComplete);

}

function image_loadComplete(event:Event):void
{

    trace("Ok I am fired");


    }
2

2 Answers

2
votes

After you browse for file, you have to call load() and then parse loaded content.

...
fileRef.addEventListener(Event.SELECT,selected);
fileRef.browse(allTypes);
function selected(e:Event):void {
    var fr:FileReference=e.target as FileReference;
    if (!fr) return;
    fr.removeEventListener(Event.SELECT,selected);
    fr.addEventListener(Event.COMPLETE,image_loadComplete);
    fr.load();
}
1
votes

When you call .browse method then you get Event.SELECT or Event.CANCEL. After that you have to load() file by his FileReference. And only after that you will get Event.COMPLETE.