ZEBEDIAH (35 pts)

STICKMAN (155 pts)

PANDOGO (82 pts)

PEDRO CLAUDIO (50 pts)

ÉMERSON ROCHA (85 pts)

RICARDO TAKAHASHI (180 pts)

KEN AWAMURA (130 pts)

HELEN TRIOLO (444 pts)

GUILHERME G.G. (137 pts)

IRAPUAN MARTINEZ (45 pts)

DEN IVANOV (260 pts)

AMAURY BENTES (123 pts)
Treinamento PontoFlash de Flash e ActionScript

Como fazemos um objeto andar para frente e para trás por meio de um botão (roll over e roll out).

Como mudar a cor de uma imagem dinamicamente via ActionScript?

Como fazer para que quando o usuário digite uma palavra, eu sete um movieclip como true?

Será possível agora fazer um sistema web de acesso a banco de dados todinho em Flash MX?

Como faço para dar uma ação de um movieclip para outro?

Como tornar um objeto com alpha zero quando eu clicar em um dos outros itens?

Quero saber mais sobre interação Flash X banco de dados (sql mysql etc).

Quero fazer uma animação quando o mouse passa por cima do botão.

Script que chama o método play(); em todos os movieClips filhos de um movieClip.

Como desenhar círculos e bolas dinamicamente no FlashMX?

Como traço uma linha no meu filme com o mouse?

Como eu faço para eliminar as barras de rolagem do navegado IE.

Quero colocar um AVI do 3DMax no Flash.

Num Motion Guide, porque um objeto sempre percorre o menor caminho num círculo?
Conceitos de Design - Apresentação.

Frases randômicas

Sistema de newsletter utilizando Flash + ASP

Objeto Array

Menu dinâmico a partir de um xml.

Mascara animada no Flash MX

Conceitos de Programação e ActionScript.

LocalConnection

Desenvolvendo um Controle de Volume Customizado em Flash

Fade Out.

Eventos no FlashMX

Gira logo.
Barra de Scroll

Counter

3d rotation2

Menu Flash e TXT

Despertador

Spinner

Validação de senha e login

Airos 2

Experim draw

Spectrum Sound Analyzer

Photo album

Natal arvores
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