JONAS GALVEZ (521 pts)

MARCOS JOSÉ PINTO (44 pts)

MARCELO SIQUEIRA (96 pts)

MUZAK (45 pts)

SYDNEY GANHO (60 pts)

EDUARDO PERROUD (52 pts)

EDUARDO WALMOTT (226 pts)

GABRIEL SPORCH (53 pts)

LEANDRO AMANO (83 pts)

LUI FERNANDO (151 pts)

RICARDO FIGUEIRA (33 pts)

JOTA LAGO (40 pts)
Treinamento PontoFlash de Flash e ActionScript

Como fazer um rastro (mouse trial), mas que as cópias ainda variassem o alpha.

Como faço para carregar vários filmes paralelamente?

Preciso de uma action para retroceder ou reverter uma animação.

Alguém aqui consegue produzir um multimídia com o flash, utilizando arquivos Quicktime (.MOV)?

Tem como colocar numa máscara um moviclip gerado dinamicamnente via attachMovie?

Tem algum truque para diminuir o tamanho do meu site?

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

Como funcionam os operadores (=, ==, + , ++)?

Como reproduzo aquele efeito de espelho?

Como deixar minhas fontes legíveis (não embaçadas) no Flash?

Preciso formatar valores numéricos em moedas, com dois caracteres depois da vírgula.

Como faço para um objeto seguir em um caminho sinuoso?

Como fazer para o TXT importado não vir do Cache?

Como mudar de campo pela tecla TAB?
Enviando EMAIL com ASP, COLDFUSION E PHP

Rotacionar objetos 3D no Flash.

Colisão

Load Movie no FlashMX (swf, jpg e mp3).

Configurando texto via actionscript.

Sala de bate papo (chat) , com Flash+PHP

Objeto Key

Gerando pop up's com conteúdo html dinâmico usando script client-side

Botão estilo Apple, feito no Flash.

Botões estilo Apple.com feito no PhotoShop

Barneys_menu.

Objeto XML - importando para o Flash
Trilha

Waterdrop

Keypress

Espiral

Marquee

Mouse 3d

Zoom rotate e pan

Transição

Imagem transparente

Array

Texto girando

Bounce gravity glow
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