Pacote | flash.net |
Classe | public class FileReferenceList |
Herança | FileReferenceList EventDispatcher Object |
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Para trabalhar com a classe FileReferenceList:
- Instancie a classe:
var myFileRef = new FileReferenceList();
- Chame o método
FileReferenceList.browse()
, que abre uma caixa de diálogo que permite ao usuário selecionar um ou mais arquivos para upload:myFileRef.browse();
- Após a chamada bem-sucedida do método
browse()
, a propriedadefileList
do objeto FileReferenceList é preenchida com uma matriz de objetos FileReference. - Chame
FileReference.upload()
em cada elemento da matrizfileList
.
A classe FileReferenceList inclui um método browse()
e uma propriedade fileList
para trabalhar com vários arquivos. Enquanto uma chamada para FileReferenceList.browse()
estiver em execução, a reprodução do arquivo SWF será pausada em versões autônomas e externas do Flash Player e no AIR para Linux e Mac OS X 10.1 e anterior.
Elementos da API relacionados
Propriedade | Definido por | ||
---|---|---|---|
constructor : Object
Uma referência ao objeto de classe ou à função de construtor de uma determinada ocorrência de objeto. | Object | ||
fileList : Array [somente leitura]
Uma matriz de objetos FileReference. | FileReferenceList |
Método | Definido por | ||
---|---|---|---|
Cria um novo objeto FileReferenceList. | FileReferenceList | ||
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra um objeto de ouvinte de evento em um objeto EventDispatcher, de forma que o ouvinte receba a notificação de um evento. | EventDispatcher | ||
Exibe uma caixa de diálogo de navegação de arquivos que permite ao usuário selecionar um ou mais arquivos locais para upload. | FileReferenceList | ||
Envia um evento para o fluxo de eventos. | EventDispatcher | ||
Verifica se o objeto EventDispatcher tem ouvintes registrados para um tipo específico de evento. | EventDispatcher | ||
Indica se um objeto tem uma propriedade especificada definida. | Object | ||
Indica se uma ocorrência da classe Object está na cadeia de protótipos do objeto especificado como o parâmetro. | Object | ||
Indica se a propriedade especificada existe e é enumerável. | Object | ||
Remove um ouvinte do objeto EventDispatcher. | EventDispatcher | ||
Define a disponibilidade de uma propriedade dinâmica para operações de repetição. | Object | ||
Retorna a representação da string deste objeto, formatado segundo as convenções específicas para a localidade. | Object | ||
Retorna a representação de string do objeto especificado. | Object | ||
Retorna o valor primitivo do objeto especificado. | Object | ||
Verifica se um ouvinte de evento está registrado nesse objeto EventDispatcher ou em qualquer um de seus ancestrais para o tipo de evento especificado. | EventDispatcher |
Evento | Resumo | Definido por | ||
---|---|---|---|---|
[transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR ganha o foco do sistema operacional e está se tornando inativo. | EventDispatcher | |||
Despachado quando o usuário descarta a caixa de diálogo de navegação de arquivos. | FileReferenceList | |||
[transmissão de evento] Despachado quando o Flash Player ou o aplicativo do AIR perde o foco do sistema operacional e está se tornando inativo. | EventDispatcher | |||
Despachado quando o usuário seleciona um ou mais arquivos para upload a partir da caixa de diálogo de navegação de arquivos. | FileReferenceList |
fileList | propriedade |
fileList:Array
[somente leitura] Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Uma matriz de objetos FileReference
.
Quando o método FileReferenceList.browse()
é chamado e o usuário selecionou uma ou mais arquivos a partir da caixa de diálogo aberta pelo método browse()
, essa propriedade é preenchida com uma matriz de objetos FileReference, cada um representando os arquivos selecionados pelo usuário. Dessa forma, você pode usar essa matriz para carregar cada arquivo com o método FileReference.upload()
. É necessário carregar um arquivo por vez.
A propriedade fileList
é preenchida de uma forma nova sempre que browse() é chamado nesse objeto FileReferenceList.
As propriedades de objetos FileReference
são descritas na documentação da classe FileReference.
Implementação
public function get fileList():Array
Elementos da API relacionados
FileReferenceList | () | Construtor |
public function FileReferenceList()
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Cria um novo objeto FileReferenceList. Um objeto FileReferenceList não conterá nada até você chamar o método browse()
nele e o usuário selecionar um ou mais arquivos. Quando você chamar browse()
no objeto FileReference, a propriedade fileList
desse objeto será preenchida com uma matriz de objetos FileReference
.
Elementos da API relacionados
browse | () | método |
public function browse(typeFilter:Array = null):Boolean
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Exibe uma caixa de diálogo de navegação de arquivos que permite ao usuário selecionar um ou mais arquivos locais para upload. A caixa de diálogo é nativa para o sistema operacional do usuário.
No Flash Player 10 e posterior, você pode chamar esse método com êxito somente em resposta a um evento do usuário (por exemplo, em um manipulador de eventos para um evento de clique de mouse ou de pressionamento de tecla). Caso contrário, a chamada desse método fará com que o Flash Player lance um erro.
Quando você chamar esse método e o usuário selecionar arquivos com êxito, a propriedade fileList
deste objeto FileReferenceList será preenchida com uma matriz de objetos FileReference, uma para cada arquivo selecionado pelo usuário. Subsequentemente, sempre que o método FileReferenceList.browse() for chamado, a propriedade FileReferenceList.fileList
será redefinida para o(s) arquivo(s) selecionado(s) pelo usuário na caixa de diálogo.
Usando o parâmetro typeFilter
, você pode determinar quais arquivos são exibidos pela caixa de diálogo.
Apenas uma sessão de FileReference.browse()
, FileReference.download()
ou FileReferenceList.browse()
pode ser desempenhada por vez em um objeto FileReferenceList (porque apenas uma caixa de diálogo pode ser aberta por vez).
Parâmetros
typeFilter:Array (default = null ) — Uma matriz de ocorrências de FileFilter usadas para filtrar os arquivos que são exibidos na caixa de diálogo. Se você omitir esse parâmetro, todos os arquivos serão exibidos. Para obter mais informações, consulte a classe FileFilter.
|
Boolean — Retornará true se os parâmetros forem válidos e se a caixa de diálogo de navegação de arquivos for aberta.
|
Eventos
select: — Invocada quando o usuário selecionou com êxito um item para upload a partir da caixa de diálogo.
| |
cancel: — Invocada quando usuário descarta a caixa de diálogo clicando em Cancelar ou fechando-a.
|
Lança
IllegalOperationError — Lançada pelos seguintes motivos: 1) Outra sessão de navegação de FileReference ou FileReferenceList está em progresso; apenas uma sessão de navegação de arquivo pode ser desempenhada de cada vez. 2) Uma configuração no arquivo mms.cfg do usuário proíbe essa operação.
| |
ArgumentError — Se a matriz typeFilter não contiver objetos FileFilter corretamente formatados, uma exceção será lançada. Para obter detalhes sobre a formação de filtros correta, consulte a documentação de FileFilter.
| |
Error — Se o método não for chamado em resposta a uma ação do usuário, por exemplo, um evento de mouse ou de pressionamento de tecla.
|
Elementos da API relacionados
cancel | Evento |
flash.events.Event
propriedade Event.type =
flash.events.Event.CANCEL
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Despachado quando o usuário descarta a caixa de diálogo de navegação de arquivos. (Essa caixa de diálogo é aberta quando você chama os métodos FileReferenceList.browse()
, FileReference.browse()
ou FileReference.download()
.)
Event.CANCEL
define o valor da propriedade type
de um objeto de evento cancel
.
Esse evento tem as seguintes propriedades:
Propriedade | Valor |
---|---|
bubbles | false |
cancelable | false ; não há comportamento padrão a ser cancelado. |
currentTarget | O objeto que está processando ativamente o objeto Event com um ouvinte de evento. |
target | Uma referência ao objeto no qual a operação é cancelada. |
Elementos da API relacionados
select | Evento |
flash.events.Event
propriedade Event.type =
flash.events.Event.SELECT
Versão da linguagem: | ActionScript 3.0 |
Versões de runtime: | AIR 1.0, Flash Player 9 |
Despachado quando o usuário seleciona um ou mais arquivos para upload a partir da caixa de diálogo de navegação de arquivos. (Essa caixa de diálogo é aberta quando você chama os métodos FileReferenceList.browse()
, FileReference.browse()
ou FileReference.download()
.) Quando o usuário selecionar um arquivo e confirmar a operação (por exemplo, clicando em Salvar), o objeto FileReferenceList
será preenchido com objetos FileReference que representam os arquivos selecionados por esse usuário.
Event.SELECT
define o valor da propriedade type
de um objeto de evento select
.
Esse evento tem as seguintes propriedades:
Propriedade | Valor |
---|---|
bubbles | false |
cancelable | false ; não há comportamento padrão a ser cancelado. |
currentTarget | O objeto que está processando ativamente o objeto Event com um ouvinte de evento. |
target | O objeto no qual um item foi selecionado. |
Elementos da API relacionados
complete
, que é despachado quando cada arquivo individual no objeto FileReferenceList é carregado. O evento LIST_COMPLETE
na classe FileReferenceListExample será despachado quando todos os arquivos no objeto FileReferenceList tiverem sido carregados.
Para executar esse exemplo, insira um script gravado para aceitar um upload de arquivo em http://www.[yourDomain].com/yourUploadHandlerScript.cfm. Com base na localização do arquivo SWF e no local em que você está carregando arquivos, talvez também seja necessário compilar o arquivo SWF com a Segurança de reprodução local definida como Acessar somente a rede ou atualizar as configurações de segurança do Flash® Player para permitir esse acesso de rede ao arquivo. Se o servidor de upload for remoto e você executar esse exemplo a partir do seu computador desktop, o servidor deverá ter um arquivo 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()); } }
Wed Jun 13 2018, 11:10 AM Z