Pacchettoflash.net
Classepublic class FileReferenceList
EreditarietàFileReferenceList Inheritance EventDispatcher Inheritance Object

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

La classe FileReferenceList fornisce un modo per consentire agli utenti di selezionare uno o più file da caricare. Un oggetto FileReferenceList rappresenta un gruppo di uno o più file locali sul disco dell'utente sotto forma di un array di oggetti FileReference. Per informazioni dettagliate e considerazioni importanti sugli oggetti FileReference e sulla classe FileReference (che si utilizza con FileReferenceList), vedere la sezione relativa alla classe FileReference.

Per utilizzare la classe FileReferenceList:

La classe FileReferenceList include un metodo browse() e una proprietà fileList da utilizzare per le operazioni con più file. Mentre è in esecuzione una chiamata al metodo FileReferenceList.browse(), la riproduzione del file SWF viene messa in pausa sui lettori autonomi ed esterni per Linux e Mac OS X 10.1 e versioni precedenti.

Vedere gli esempi

Vedere anche

FileReference


Proprietà pubbliche
 ProprietàDefinito da
 Inheritedconstructor: Object
Un riferimento all'oggetto classe o alla funzione di costruzione per una determinata istanza di oggetto.
Object
  fileList: Array
[sola lettura] Un array di oggetti FileReference.
FileReferenceList
 Inheritedprototype: Object
[statico] Un riferimento all'oggetto prototipo di un oggetto classe o funzione.
Object
Metodi pubblici
 MetodoDefinito da
  
Crea un nuovo oggetto FileReferenceList.
FileReferenceList
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un oggetto listener di eventi con un oggetto EventDispatcher, in modo che il listener riceva la notifica di un evento.
EventDispatcher
  
browse(typeFilter:Array = null):Boolean
Visualizza una finestra di dialogo per l'individuazione dei file che consente all'utente di selezionare uno o più file locali da caricare.
FileReferenceList
 Inherited
Invia un evento nel flusso di eventi.
EventDispatcher
 Inherited
Verifica se per l'oggetto EventDispatcher sono presenti listener registrati per un tipo specifico di evento.
EventDispatcher
 Inherited
Indica se per un oggetto è definita una proprietà specifica.
Object
 Inherited
Indica se un'istanza della classe Object si trova nella catena di prototipi dell'oggetto specificato come parametro.
Object
 Inherited
Indica se la proprietà specificata esiste ed è enumerabile.
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
Rimuove un listener dall'oggetto EventDispatcher.
EventDispatcher
 Inherited
Imposta la disponibilità di una proprietà dinamica per le operazioni cicliche.
Object
 Inherited
Restituisce la rappresentazione in formato stringa dell'oggetto specificato.
Object
 Inherited
Restituisce il valore di base dell'oggetto specificato.
Object
 Inherited
Verifica se un listener di eventi è registrato con questo oggetto EventDispatcher o qualsiasi suo antenato per il tipo di evento specificato.
EventDispatcher
Eventi
 Evento Riepilogo Definito da
 Inherited Inviato quando Flash Player riceve lo stato di attivazione del sistema operativo e diventa attivo.EventDispatcher
   Inviato quando l'utente chiude la finestra di dialogo per l'individuazione dei file.FileReferenceList
 Inherited Inviato quando Flash Player perde lo stato di attivazione del sistema operativo e sta per diventare inattivo.EventDispatcher
   Inviato quando l'utente seleziona uno o più file da caricare dalla finestra di dialogo per l'individuazione dei file.FileReferenceList
Descrizione delle proprietà
fileListproprietà
fileList:Array  [sola lettura]

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Un array di oggetti FileReference.

Quando viene chiamato il metodo FileReferenceList.browse() e l'utente ha selezionato uno o più file nella finestra di dialogo visualizzata dal metodo browse(), questa proprietà viene compilata con un array di oggetti FileReference, ciascuno dei quali rappresenta i file selezionati dall'utente. A questo punto è possibile utilizzare questo array per caricare ogni file con il metodo FileReference.upload(). È necessario caricare un file alla volta.

La proprietà fileList viene nuovamente compilata ogni volta che si chiama browse() su tale oggetto FileReferenceList.

Le proprietà degli oggetti FileReference sono descritte nella documentazione relativa alla classe FileReference.


Implementazione
    public function get fileList():Array

Vedere anche

Descrizione della funzione di costruzione
FileReferenceList()Funzione di costruzione
public function FileReferenceList()

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Crea un nuovo oggetto FileReferenceList. Un oggetto FileReferenceList non contiene nulla fino a quando non si chiama il metodo browse() su di esso e l'utente seleziona uno o più file. Quando si chiama browse() sull'oggetto FileReference, la proprietà fileList dell'oggetto viene compilata con un array di oggetti FileReference.

Vedere anche

Descrizione dei metodi
browse()metodo
public function browse(typeFilter:Array = null):Boolean

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Visualizza una finestra di dialogo per l'individuazione dei file che consente all'utente di selezionare uno o più file locali da caricare. La finestra di dialogo è nativa del sistema operativo dell'utente. Quando si chiama questo metodo e l'utente seleziona correttamente i file, la proprietà fileList di questo oggetto FileReferenceList viene compilata con un array di oggetti FileReference, uno per ogni file selezionato dall'utente. A ogni chiamata successiva del metodo FileReferenceList.browse(), la proprietà FileReferenceList.fileList viene ripristinata in base al file selezionato dall'utente nella finestra di dialogo.

Il parametro typeFilter consente di determinare quali file vengono visualizzati nella finestra di dialogo.

È possibile eseguire una sola sessione FileReference.browse(), FileReference.download() o FileReferenceList.browse() alla volta su un oggetto FileReferenceList (poiché è possibile aprire una sola finestra di dialogo per volta).

Parametri

typeFilter:Array (default = null) — Un array di istanze di FileFilter utilizzate per filtrare i file visualizzati nella finestra di dialogo. Se si omette questo parametro, vengono visualizzati tutti i file. Per ulteriori informazioni, vedere la classe FileFilter.

Restituisce
Boolean — Restituisce true se i parametri sono validi e viene visualizzata la finestra di dialogo per l'individuazione dei file.

Eventi
select:Event — Inviato quando l'utente ha selezionato correttamente un elemento da caricare dalla finestra di dialogo.
 
cancel:Event — Richiamato quando l'utente esce dalla finestra di dialogo facendo clic su Annulla o chiudendola.

Genera
IllegalOperationError — Generato per i motivi seguenti: 1) Un'altra sessione FileReference o FileReferenceList è in corso; è possibile eseguire una sola sessione di individuazione dei file per volta. 2) Un'impostazione nel file mms.cfg dell'utente proibisce questa operazione.
 
ArgumentError — Se l'array typeFilter non contiene oggetti FileFilter formattati in modo corretto, viene generata un'eccezione. Per informazioni dettagliate sulla corretta formattazione dei filtri, vedere la documentazione di FileFilter.

Vedere anche

Descrizione degli eventi
cancel Evento
Tipo di oggetto evento: flash.events.Event
Event.type property = flash.events.Event.CANCEL

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Inviato quando l'utente chiude la finestra di dialogo per l'individuazione dei file. (Questa finestra di dialogo viene visualizzata quando si chiama il metodo FileReferenceList.browse(), FileReference.browse() o FileReference.download()).

Definisce il valore della proprietà type di un oggetto evento cancel.

Questo evento ha le seguenti proprietà:

ProprietàValore
bubblesfalse
cancelablefalse; non è presente alcun comportamento predefinito da annullare.
currentTargetL'oggetto che elabora attivamente l'oggetto Event con un listener di eventi.
targetUn riferimento all'oggetto sul quale viene annullata l'operazione.

Vedere anche

select Evento  
Tipo di oggetto evento: flash.events.Event
Event.type property = flash.events.Event.SELECT

Versione linguaggio: ActionScript 3.0
Versione lettore: Flash Player 9

Inviato quando l'utente seleziona uno o più file da caricare dalla finestra di dialogo per l'individuazione dei file. (Questa finestra di dialogo viene visualizzata quando si chiama il metodo FileReferenceList.browse(), FileReference.browse() o FileReference.download()). Quando l'utente seleziona un file e conferma l'operazione (ad esempio, facendo clic su Salva), l'oggetto FileReferenceList viene compilato dagli oggetti FileReference che rappresentano i file selezionati dall'utente.

Definisce il valore della proprietà type di un oggetto evento select.

Questo evento ha le seguenti proprietà:

ProprietàValore
bubblesfalse
cancelablefalse; non è presente alcun comportamento predefinito da annullare.
currentTargetL'oggetto che elabora attivamente l'oggetto Event con un listener di eventi.
targetL'oggetto FileReference su cui è stata selezionata una voce.

Vedere anche

Esempi Come utilizzare gli esempi
FileReferenceListExample.as

Nell'esempio seguente viene illustrato come utilizzare gli eventi per gestire il caricamento di più file. Dopo che il file è stato scaricato e l'evento complete inviato, Flash Player può leggere tutte le altre proprietà dell'oggetto FileReference. L'evento LIST_COMPLETE nella classe FileReferenceListExample viene inviato quando tutti i file nell'oggetto FileReferenceList sono stati caricati.

Per provare questo esempio, inserire uno script che sia scritto in modo da accettare un caricamento di file all'indirizzo http://www.[yourDomain].com/yourUploadHandlerScript.cfm. A seconda della posizione del file SWF e di dove si caricano i file, è possibile che sia anche necessario compilare il file SWF con l'opzione Sicurezza riproduzione locale impostata su Accedi solo alla rete o aggiornare le impostazioni di sicurezza di Flash ® Player consentire al file l'accesso alla rete. Se il server di caricamento è remoto e si prova questo esempio da un computer desktop, sul server deve essere presente un file 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());
    }
}




 

Inviami un messaggio e-mail quando vengono aggiunti dei commenti a questa | Rapporto sui commenti

Pagina corrente: http://livedocs.adobe.com/flash/9.0_it/ActionScriptLangRefV3/flash/net/FileReferenceList.html