Packageflash.net
Classepublic class FileReferenceList
HéritageFileReferenceList Inheritance EventDispatcher Inheritance Object

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

La classe FileReferenceList permet aux utilisateurs de sélectionner un ou plusieurs fichiers à charger. Un objet FileReferenceList représente un groupe de fichiers locaux présents dans le disque de l'utilisateur sous forme de tableau d'objets FileReference. Pour obtenir des informations détaillées et les principales caractéristiques relatives aux objets et à la classe FileReference, que vous utilisez avec FileReferenceList, consultez la classe FileReference.

Pour utiliser la classe FileReferenceList :

La classe FileReferenceList comprend une méthode browse() et une propriété fileList pour travailler avec plusieurs fichiers. Pendant l'exécution d'un appel à FileReferenceList.browse(), la lecture de fichier SWF s'interrompt sur les lecteurs autonomes et externes des systèmes Linux et Mac OS X 10.1 et versions antérieures.

Consulter les exemples

Voir aussi

FileReference


Propriétés publiques
 PropriétéDéfini par
 Inheritedconstructor : Object
Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet.
Object
  fileList : Array
[lecture-seule] Un tableau d'objets FileReference.
FileReferenceList
 Inheritedprototype : Object
[static] Référence à l’objet prototype d’un objet de classe ou fonction.
Object
Méthodes publiques
 MéthodeDéfini par
  
Crée un nouvel objet FileReferenceList.
FileReferenceList
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Enregistre un objet écouteur d’événement auprès d’un objet EventDispatcher afin que l’écouteur soit averti d’un événement.
EventDispatcher
  
browse(typeFilter:Array = null):Boolean
Affiche une boîte de dialogue de recherche de fichiers dans laquelle l'utilisateur peut sélectionner un ou plusieurs fichiers locaux à charger.
FileReferenceList
 Inherited
Distribue un événement dans le flux d’événements.
EventDispatcher
 Inherited
Vérifie si des écouteurs sont enregistrés auprès de l'objet EventDispatcher pour un type spécifique d’événement.
EventDispatcher
 Inherited
Indique si la propriété spécifiée d'un objet est définie.
Object
 Inherited
Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l'objet spécifié en tant que paramètre.
Object
 Inherited
Indique si la propriété spécifiée existe et est énumérable.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Supprime un écouteur de l’objet EventDispatcher.
EventDispatcher
 Inherited
Définit la disponibilité d'une propriété dynamique pour les opérations en boucle.
Object
 Inherited
Renvoie la représentation sous forme de chaîne de l'objet spécifié.
Object
 Inherited
Renvoie la valeur primitive de l'objet spécifié.
Object
 Inherited
Vérifie si un écouteur d’événement est enregistré auprès de cet objet EventDispatcher ou de ses ancêtres pour le type d’événement spécifié.
EventDispatcher
Evénements
 Evénement Synthèse Défini par
 Inherited Distribué lorsque Flash Player a le focus du système d’exploitation et devient actif.EventDispatcher
   Distribué lorsque l'utilisateur ferme la boîte de dialogue de recherche de fichiers.FileReferenceList
 Inherited Distribué lorsque Flash Player perd le focus du système d’exploitation et devient inactif.EventDispatcher
   Distribué lorsque l'utilisateur sélectionne un ou plusieurs fichiers à charger dans la boîte de dialogue de recherche de fichiers.FileReferenceList
Détails des propriétés
fileListpropriété
fileList:Array  [lecture-seule]

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Tableau d'objets FileReference.

Quand la méthode FileReferenceList.browse() est appelée et que l'utilisateur a sélectionné un ou plusieurs fichiers dans la boîte de dialogue ouverte par la méthode browse(), cette propriété est renseignée par un tableau d'objets FileReference qui représentent les fichiers que l'utilisateur a sélectionnés. Vous pouvez ensuite utiliser ce tableau pour charger les fichiers par le biais de la méthode FileReference.upload(). Vous devez charger les fichiers un par un.

La propriété fileList est renseignée à nouveau à chaque appel de la méthode browse() sur cet objet FileReferenceList.

Les propriétés des objets FileReference sont décrites dans la documentation relative à la classe FileReference.


Implémentation
    public function get fileList():Array

Voir aussi

Détails du constructeur
FileReferenceList()Constructeur
public function FileReferenceList()

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Crée un nouvel objet FileReferenceList. Tout objet FileReferenceList reste vide tant que vous n’avez pas appelé pour lui la méthode browse() et que l’utilisateur n’a pas sélectionné de fichiers. Quand vous appelez browse() sur l'objet FileReference, sa propriété fileList est renseignée par un tableau d'objets FileReference.

Voir aussi

Détails des méthodes
browse()méthode
public function browse(typeFilter:Array = null):Boolean

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Affiche une boîte de dialogue de recherche de fichiers dans laquelle l'utilisateur peut sélectionner un ou plusieurs fichiers locaux à charger. La boîte de dialogue est spécifique au système d'exploitation de l'utilisateur. Lorsque vous appelez cette méthode et que l'utilisateur réussit à sélectionner des fichiers, la propriété fileList de cet objet FileReferenceList est renseignée par un tableau d'objets FileReference, à raison d’un objet pour chaque fichier sélectionné par l'utilisateur. Par la suite, à chaque appel de la méthode FileReferenceList.browse(), la propriété FileReferenceList.fileList est réinitialisée en fonction des fichiers sélectionnés par l'utilisateur dans la boîte de dialogue.

Le paramètre typeFilter vous permet de déterminer les fichiers répertoriés dans la boîte de dialogue.

Une seule session FileReference.browse(), FileReference.download() ou FileReferenceList.browse() peut être effectuée à la fois sur un objet FileReferenceList (car une seule boîte de dialogue peut être ouverte à la fois).

Paramètres

typeFilter:Array (default = null) — Tableau d’occurrences de FileFilter utilisé pour filtrer les fichiers qui s'affichent dans la boîte de dialogue. Si vous omettez ce paramètre, tous les fichiers s'affichent. Pour plus d’informations, consultez la propriété FileFilter.

Valeur renvoyée
Boolean — Renvoie true si les paramètres sont valides et que la boîte de dialogue de recherche de fichiers est ouverte.

Evénements
select:Event — Appelé quand l'utilisateur réussit à sélectionner un élément à charger dans la boîte de dialogue.
 
cancel:Event — Appelé quand l'utilisateur quitte la boîte de dialogue en cliquant sur Annuler ou en la fermant.

Lance
IllegalOperationError — Renvoyé dans les cas suivants : 1) Une autre session browse FileReference ou FileReferenceList est en cours. Il est impossible d’exécuter plusieurs sessions de recherche de fichiers simultanément. 2) Un paramètre du fichier mms.cfg de l’utilisateur bloque cette opération.
 
ArgumentError — Une exception est renvoyée si le tableau typeFilter contient des objets FileFilter incorrectement formatés. Pour plus d'informations sur le formatage correct des filtres, consultez la documentation FileFilter.

Voir aussi

Détails des événements
cancel Evénement
Type d'objet événement: flash.events.Event
Event.type property = flash.events.Event.CANCEL

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Distribué lorsque l'utilisateur ferme la boîte de dialogue de recherche de fichiers. (Cette boîte de dialogue s'ouvre quand vous appelez la méthode FileReferenceList.browse(), FileReference.browse() ou FileReference.download().)

Définit la valeur de la propriété type d'un objet événement cancel.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetL’objet qui traite activement l’objet Event avec un écouteur d’événements.
targetRéférence à l’objet pour lequel l'opération est annulée.

Voir aussi

select Evénement  
Type d'objet événement: flash.events.Event
Event.type property = flash.events.Event.SELECT

Version du langage : ActionScript 3.0
Version du lecteur : Flash Player 9

Distribué lorsque l'utilisateur sélectionne un ou plusieurs fichiers à charger dans la boîte de dialogue de recherche de fichiers. (Cette boîte de dialogue s'ouvre quand vous appelez la méthode FileReferenceList.browse(), FileReference.browse() ou FileReference.download().) Lorsque l'utilisateur sélectionne un fichier et confirme l'opération (par exemple, en cliquant sur Enregistrer), l'objet FileReferenceList est renseigné par les objets FileReference représentant les fichiers sélectionnés par l'utilisateur.

Définit la valeur de la propriété type d'un objet événement select.

Les propriétés de cet événement sont les suivantes :

PropriétéValeur
bubblesfalse
cancelablefalse ; il n’existe aucun comportement par défaut à annuler.
currentTargetObjet qui traite activement l’objet Event avec un écouteur d’événements.
targetObjet FileReference sur lequel un élément a été sélectionné.

Voir aussi

Exemples Utilisation des exemples
FileReferenceListExample.as

L’exemple suivant indique comment utiliser des événements pour gérer le chargement de plusieurs fichiers. La classe CustomFileReferenceList étend FileReferenceList et comprend un événement complete, distribué au chargement de chaque fichier que contient l’objet FileReferenceList. L'événement LIST_COMPLETE de la classe FileReferenceListExample est distribué après le chargement de tous les fichiers de l’objet FileReferenceList.

Pour exécuter cet exemple, placez un script conçu pour accepter un chargement de fichiers à l’adresse http://www.[yourDomain].com/yourUploadHandlerScript.cfm. Selon l’emplacement de votre fichier SWF et la destination des fichiers à charger, vous aurez peut-être besoin de compiler le fichier SWF avec l'option Protection de lecture locale définie sur Accéder au réseau seulement ou de mettre à jour vos paramètres de sécurité Flash® Player pour autoriser ce fichier à accéder au réseau. Si le serveur de chargement est distant et que vous exécutez cet exemple depuis votre ordinateur de bureau, assurez-vous que le serveur contienne un fichier crossdomain.xml.


package {
    import flash.display.Sprite;
    import flash.events.*;
    import flash.net.FileReference;
    import flash.net.FileReferenceList;
 
    public class FileReferenceListExample extends Sprite {
        public static var LIST_COMPLETE:String = "listComplete";
        public function FileReferenceListExample() {
            initiateFileUpload();
        }

        private function initiateFileUpload():void {
            var fileRef:CustomFileReferenceList = new CustomFileReferenceList();
            fileRef.addEventListener(FileReferenceListExample.LIST_COMPLETE, listCompleteHandler);
            fileRef.browse(fileRef.getTypes());
        }

        private function listCompleteHandler(event:Event):void {
            trace("listCompleteHandler");
        }
    }
}
 
import flash.events.*;
import flash.net.FileReference;
import flash.net.FileReferenceList;
import flash.net.FileFilter;
import flash.net.URLRequest;
 
class CustomFileReferenceList extends FileReferenceList {
    private var uploadURL:URLRequest;
    private var pendingFiles:Array;

    public function CustomFileReferenceList() {
        uploadURL = new URLRequest();
        uploadURL.url = "http://www.[yourDomain].com/yourUploadHandlerScript.cfm";
        initializeListListeners();
    }

    private function initializeListListeners():void {
        addEventListener(Event.SELECT, selectHandler);
        addEventListener(Event.CANCEL, cancelHandler);
    }

    public function getTypes():Array {
        var allTypes:Array = new Array();
        allTypes.push(getImageTypeFilter());
        allTypes.push(getTextTypeFilter());
        return allTypes;
    }
 
    private function getImageTypeFilter():FileFilter {
        return new FileFilter("Images (*.jpg, *.jpeg, *.gif, *.png)", "*.jpg;*.jpeg;*.gif;*.png");
    }
 
    private function getTextTypeFilter():FileFilter {
        return new FileFilter("Text Files (*.txt, *.rtf)", "*.txt;*.rtf");
    }
 
    private function doOnComplete():void {
        var event:Event = new Event(FileReferenceListExample.LIST_COMPLETE);
        dispatchEvent(event);
    }
 
    private function addPendingFile(file:FileReference):void {
        trace("addPendingFile: name=" + file.name);
        pendingFiles.push(file);
        file.addEventListener(Event.OPEN, openHandler);
        file.addEventListener(Event.COMPLETE, completeHandler);
        file.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
        file.addEventListener(ProgressEvent.PROGRESS, progressHandler);
        file.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
        file.upload(uploadURL);
    }
 
    private function removePendingFile(file:FileReference):void {
        for (var i:uint; i < pendingFiles.length; i++) {
            if (pendingFiles[i].name == file.name) {
                pendingFiles.splice(i, 1);
                if (pendingFiles.length == 0) {
                    doOnComplete();
                }
                return;
            }
        }
    }
 
    private function selectHandler(event:Event):void {
        trace("selectHandler: " + fileList.length + " files");
        pendingFiles = new Array();
        var file:FileReference;
        for (var i:uint = 0; i < fileList.length; i++) {
            file = FileReference(fileList[i]);
            addPendingFile(file);
        }
    }
 
    private function cancelHandler(event:Event):void {
        var file:FileReference = FileReference(event.target);
        trace("cancelHandler: name=" + file.name);
    }
 
    private function openHandler(event:Event):void {
        var file:FileReference = FileReference(event.target);
        trace("openHandler: name=" + file.name);
    }
 
    private function progressHandler(event:ProgressEvent):void {
        var file:FileReference = FileReference(event.target);
        trace("progressHandler: name=" + file.name + " bytesLoaded=" + event.bytesLoaded + " bytesTotal=" + event.bytesTotal);
    }
 
    private function completeHandler(event:Event):void {
        var file:FileReference = FileReference(event.target);
        trace("completeHandler: name=" + file.name);
        removePendingFile(file);
    }
 
    private function httpErrorHandler(event:Event):void {
        var file:FileReference = FileReference(event.target);
        trace("httpErrorHandler: name=" + file.name);
    }
 
    private function ioErrorHandler(event:Event):void {
        var file:FileReference = FileReference(event.target);
        trace("ioErrorHandler: name=" + file.name);
    }
 
    private function securityErrorHandler(event:Event):void {
        var file:FileReference = FileReference(event.target);
        trace("securityErrorHandler: name=" + file.name + " event=" + event.toString());
    }
}




 

M'envoyer un message électronique lorsque des commentaires sont ajoutés à cette page | Rapport de commentaire

Page en cours: http://livedocs.adobe.com/flash/9.0_fr/ActionScriptLangRefV3/flash/net/FileReferenceList.html