FLASHGURU (155 pts)

JOÃO NETO (78 pts)

RICARDO TEIXEIRA (40 pts)

DEN IVANOV (260 pts)

SASHA GUDEY (235 pts)

DAAFY (55 pts)

HELEN TRIOLO (444 pts)

RODRIGO AMARAL (56 pts)

LEANDRO AMANO (83 pts)

GUILHERME G.G. (137 pts)

LUI FERNANDO (151 pts)

NETO LEAL (116 pts)
Treinamento PontoFlash de Flash e ActionScript

Qual é a diferença entre maxscroll e scroll? Quando uso um ou outro?

Preciso fazer um movieclip rodar ao contrário (retroceder).

Como criar uma array (matriz) bi-dimensional (N linhas por 3 colunas)?

Necessito realizar um questionário com 10 perguntas.

Quicktime no Flash.

Gostaria que vocês me dessem uma dica, quando usar e quando não usar o loading.

Dá pra fazer um CD com uma animação em sincronia com um som?

Aumento da velocidade de loops.

Preciso fazer um objeto menu que siga o mouse lentamente, com um delay.

Como faço para ler o conteúdo de uma variável do Flash com JS?

É possível fazer um upload de um arquivo através do flash?

Preciso rodar um AVI no flash com controladores: PLAY, PAUSE, STOP.

Como mudar randomicamente a cor de um objeto a cada clique do mouse?

Dicas para seu movie ficar mais enxuto.
Componentes no Flash MX 2004

Sistema de busca utilizando Flash + ASP.

Efeito de Fogo no Photoshop

Objeto Array

Máscara

Simulando botões d'água no PhotoShop.

Entendendo como funciona um preloader - Segunda parte

Menu circular em 3D personalizável

ListBox no FlashMX.

Desenhando uma linha entre dois pontos no Flash 5.

Jogo da Forca (terceira parte)

Mascara animada no Flash MX
Xbox f5

Digitalclock

Combobox

Pista de corrida

Focus

Natal Misc

Sashacircle 2

Ir e voltar

Coordenadas

Call

Friction

Music On Off
HOME | TUTORIAIS
Utilização da class XMLConnector
por Pedro Claudio

Diferentemente da forma que utilizamos o XMLConnector anteriormente, iremos acessar a class XMLConnector através do import.

Uma curiosidade desta classe, ela é um dos pacotes do arquivo precompilado XMLConnector.swc, e o import será feito como está em sua declaração, e o compilador já está configurado para identificar, esta classe e mais algumas outras, desta forma, digo isto porque o arquivo XMLConnector.as está armazenado no local que será feito o import.

Para prevenção de erros, na carga dinâmica do componente, foi utilizado o try-catch-finally, este foi usado neste código porque serão provocados erros de carga. E com o uso deste, a ocorrência dos erros não prejudicará o processamento do swf, e a mensagem de erro não será produzida pelo tratamento do erro e sim pelo status da carga, para um tratamento mais apurado deste erro seria necessário o desenvolvimento de uma classe estendida da classe XMLConnector, o que não será visto aqui, e para isso você precisaria dos pacotes XMLConnector.swc.

Para saber mais sobre try-catch-finally, throw e tratamentos de erros favor consultar o manual Macromedia.


Para visualizar o que o XMLConnector produz de informação e mais os dados solicitados precisamos dos seguintes componentes e suas respectivas instâncias:
- Combobox -> select;
- TextArea -> XMLConnectorStatus;
- TextArea -> XMLConnectorResult.
- E mais um componente XMLConnector na biblioteca deste filme.


//acessando a classe XMLConnector
import mx.data.components.XMLConnector;
//cria connector
var myXMLConnector:XMLConnector = new XMLConnector();
//informa a direção dos dados
myXMLConnector.direction = "receive";
//component deve ignorar espaços em branco no xml
myXMLConnector.ignoreWhite = true;
//Populando o combobox
select.dataProvider =
[
{label:"", data:""},
{label:"Carregar xml", data:"xml.xml"}, //xml existe
{label:"Provocar erro", data:"erro.xml"} //xml não existe
];
//Objeto que receberá as funções de todos os eventos
// ligados ao combobox e ao xmlconnector.

carregador = new Object();
//Evento ligado ao Combobox
select.addEventListener("change", carregador);
carregador.change = function(evt) {
/*
try - catch - finally: utilizados para o tratamento de exceções;
throw: cria uma mensagem de exceção;
*/
/*
O try isola o erro caso ocorra. Existindo o erro será produzida a menssagem
de erro com a throw, porém o erro não afetará a execução do swf.
*/

   try {
      if(evt.target.value.length) {
      //Esta linha de código equivale ao campo URL da janela de
      //propriedades.
         myXMLConnector.URL = evt.target.value;
         //Executa a conexão do xml com flash através do xmlconnector informado.
         myXMLConnector.trigger();
      }else{
      //especifica uma mensagem de erro
         throw "Nenhum arquivo foi informado!";
      }
   } catch (e) {
/*
A catch só será executada quando uma mensagem de erro for definida.
Para o tratamento da exeção do erro do XMLConnector é necessário
extender a class XMLConnector, assim como alguns tipo de dados.
Quando o tratamento de erro for implemetado e atribuido a uma catch, esta
não identificará outros erros.
No nosso caso não atribuimos nenhuma mensagem à catch.
*/

      XMLConnectorResult.text="";
      //alterndo cor da fonte no TextArea XMLConnectorStatus
      XMLConnectorStatus.setStyle("color", 0xFF0000);
      //Informando erro
      XMLConnectorStatus.text = e;
/*
Flag de status, ele não deixará que seja exibido o erro
mais de uma vez, isto porque ocorrendo o erro o
xmlconnector tenta uma segunda vez, e a mensagem de
erro só é produzida da primeira vez
*/

      this.completo = false;
   } finally { //Sempre será executado, independente da ocorrência de erro.
      this.completo=true;
   }
};
//Evento de status de excução do xmlconnector
myXMLConnector.addEventListener("status", carregador);
carregador.status = function(describe) {
   if (this.completo) {
   //Limpa os TextArea
      XMLConnectorStatus.text = XMLConnectorResult.text="";
      this.completo = false;
      //Testa qual o tipo da ocorrência
      if(describe.code=='StatusChange'){
      //Restaura cor da fonte do TextArea de debug
      //'XMLConnector.status'.
         XMLConnectorStatus.setStyle("color", 0x0B333C);
         //O TextArea recebe o xml como ele foi carregado pelo
         //XMLConnector.
         XMLConnectorResult.text = myXMLConnector.results;
      }else{
      //Ocorrendo um dos erros acima a cor da fonte será alterada
         XMLConnectorStatus.setStyle("color", 0xFF0000);
      }
      //Realizando dump do status no TextArea XMLConnectorStatus
      XMLConnectorStatus.text = "status.target="+describe.target+" \n status.data.faultcode="+describe.data.faultcode+" \n status.data.faultstring="+describe.data.faultstring+" \n status.code="+describe.code+" \n status.type="+describe.type+" \n";
   }
};
carregador.completo=true;

Um possível erro pode ser contornado, porém minimizem-no ao máximo que puderem, isso porque o item Using error handling and debugging nos alerta.

Baixe aqui os arquivos relacionados a esse tutorial



Devido à reformulação implementada no site, pode ser que você encontre alguns links quebrados. Por favor, ajude-nos a corrigir eventuais problemas nos informando links quebrados
0 comentário