PDA

Volledige versie bekijken : [Flex 2] fileReference event wordt niet getriggered?


Dauntless
%Europe/Berlin %928 %2006, 23:16
Hey!

Ik probeer wat bestandjes te uploaden via flex (deel van een grotere app) maar het lukt me niet echt. Dit is m'n code:
<mx:Script>
<![CDATA[
import flash.events.Event;
[Bindable]
public var pictureOwner:String;
private function uploadFile():void
{
var fileHandler:FileReferenceList = new FileReferenceList();
fileHandler.addEventListener(Event.SELECT, onFileSelected);
try
{
fileHandler.browse();
}
catch(error:Error)
{
trace("error");
}

trace("browse");
}

private function onFileSelected(myEvent:Event):void
{
//alle files uploaden
trace("file selected!");
}
]]>
</mx:Script>
De eerste trace werkt wel ("browse") maar bij de onFileSelected komt hij niet...

Iemand een ID ?

TrueChaoZ
%Europe/Berlin %413 %2006, 10:55
gebruik eens "new FileReference()" ipv FileReferenceList ;)

fileReference = new FileReference();
var fileTypes:FileFilter = new FileFilter("MP3 Files (*.mp3)", "*.mp3");
var allTypes:Array = new Array(fileTypes);
fileReference.addEventListener(Event.SELECT, onFileSelected);
try {
fileReference.browse(allTypes);
} catch (error:Error) {
Alert.show("Unable to browse for files. Please contact your administrator.");
}

Dauntless
%Europe/Berlin %688 %2006, 17:31
gebruik eens "new FileReference()" ipv FileReferenceList ;)

fileReference = new FileReference();
var fileTypes:FileFilter = new FileFilter("MP3 Files (*.mp3)", "*.mp3");
var allTypes:Array = new Array(fileTypes);
fileReference.addEventListener(Event.SELECT, onFileSelected);
try {
fileReference.browse(allTypes);
} catch (error:Error) {
Alert.show("Unable to browse for files. Please contact your administrator.");
}
Maar ik wil een hele lijst files laten selecteren ...

TrueChaoZ
%Europe/Berlin %705 %2006, 17:55
Ok en wat als je fileTypes meegeeft? Of laat het anders eerst werken met 'single file selection'. Of had je dat al?

EDIT: wellicht heb je hier wat aan -> http://codycodingcowboy.cahlan.com/2006/09/uploading-files-with-flex-and-php.html (en eventueel http://www.adobe.com/devnet/coldfusion/articles/multifile_upload.html / http://labs.newmediateam.com/Multifileupload/FileUpload.html)

Dauntless
%Europe/Berlin %757 %2006, 19:10
FileReference & fileType array
<mx:Script>
<![CDATA[
import flash.events.Event;
[Bindable]
public var pictureOwner:String;
private function uploadFile():void
{
var fileHandler:FileReference = new FileReference();
fileHandler.addEventListener(Event.SELECT, onFileSelected);
try
{
fileHandler.browse(Array(new FileFilter("MP3 Files (*.mp3)", "*.mp3")));
}
catch(error:Error)
{
trace("error");
}

trace("browse");
}

private function onFileSelected(myEvent:Event):void
{
//alle files uploaden
trace("file selected!");
}
]]>
</mx:Script>
Werkt niet hier... Bij jullie wel ?

TheDutch
%Europe/Berlin %817 %2006, 20:37
Dit is een bug in de Flash Player 9 (heb hem een tijdje geleden gehad) ;).

Je mag de FileReference niet declareren in een method/function. Doe dit dus er buiten als Class property.

Dauntless
%Europe/Berlin %831 %2006, 20:56
Dit is een bug in de Flash Player 9 (heb hem een tijdje geleden gehad) ;).

Je mag de FileReference niet declareren in een method/function. Doe dit dus er buiten als Class property.
Pfffffffffffffffffffff!!!!

Thx Dutchy :)

TheDutch
%Europe/Berlin %831 %2006, 20:57
Anytime buddy :)

Dauntless
%Europe/Berlin %835 %2006, 21:02
Is dit overigens een bug van de FileReference(List) classe, of eerder van de eventDispatcher ?

TheDutch
%Europe/Berlin %844 %2006, 21:15
Het is een specifieke bug van de FileReference/FileReferenceList aangezien de andere classes die EventDispatcher extenden er geen problemen mee hebben :).

TrueChaoZ
%Europe/Berlin %867 %2006, 21:49
Hmmm dan moet ik toch eens mijn upload code nalezen want volgens mij werkt dat bij mij wel, even de code zoeken :) ogenblikje!

EDIT: heheh nope inderdaad ik gebruik ook FileReference als property van het MXML Component waar die in zit, je wilt hem tenslotte toch later nog aan kunnen roepen dus had het automatisch al gedaan, enig idee of deze met de nieuwe Flash Player 9 release (nu nog in beta) (http://labs.adobe.com/technologies/flashplayer9/) opgelost is?

TheDutch
%Europe/Berlin %913 %2006, 22:54
Helaas is het tot nu toe nog niet opgelost in de beta versie van de laatste Flash Player 9 versie. Ik zal hem morgen wel even reporten als bug wanneer dat nog niet gedaan is :).