Arquivo para a categoria 'Flash'

Novo tutorial

Olá pessoal.

Acabei de publicar mais um tutorial para o portal do MXStudio. Dessa vez mostro como criar um Formulário de contato usando o Flash e o PHP. Não deixem de conferir.

http://www.mxstudio.com.br/flash/formulario-e-mail-flashphp/

Qualquer dúvida podem me enviar um E-mail ou postar no Fórum do MXStudio.

[]s

19º Desafio Flash

Hoje começa mais um Desafio de Flash no MXStudio. Desse vez, o Desafio é criar um Ambiente Operacional (como Windows, Linux, Mac OS, etc). O Desafio começa hoje 09/09 vai até o dia 27/10. Conheça as regras no tópico feito no Fórum:

http://www.mxstudio.com.br/forum/index.php?showtopic=48175

Os trabalhos devem ser postados no seguinte link:

http://www.mxstudio.com.br/forum/index.php?showtopic=48174

Não deixem de participar, aprende-se muito participando de um Desafio.

[]s

Trabalho Desafio

Apesar de estar sem tempo, consegui fazer meu trabalho para o Desafio Premiado do MXStudio. Usei o Flash CS3 e o Fireworks CS3. Segue o link do meu trabalho:

http://desafiomx.atspace.com/pan/index.html

[]s

ReleaseOutside no AS3

Em um dos meus tutoriais sobre o Flash CS3, mostro que os eventos do ActionScript 3 é diferente dos eventos do ActionScript 2. Não existe mais o onPress, onRelease, onRollOver, onRollOut, etc. Todos os eventos relacionados a Mouse está na Classe MouseEvent.

Mas a maior mudança foi a não inclusão de um evento para substituir o onReleaseOutside, felizmente existe uma solução para esse problema. Criaremos um MovieClip com instancia de botao, colocaremos a seguinte ação:

/* Adicionamos o envento relativo ao onPress no botao */
botao.addEventListener(MouseEvent.MOUSE_DOWN, btPress);
/* Função relativo ao onPress */
function btPress(event:MouseEvent):void {
   /* Adicionamos o evento relativo ao onRelease no stage (palco) */
   stage.addEventListener(MouseEvent.MOUSE_UP, btRelease);
   trace("onPress");
}
/* Função relativa ao onRelease */
function btRelease(event:MouseEvent):void {
   /* Verifica se o alvo é realmente o botão */
   if (event.target.name == "botao") {
      /* Sua ação relativa ao evento onReleaseOutside */
      /* Remove o Listener */
      stage.removeEventListener(MouseEvent.MOUSE_UP, btRelease);
      trace("onReleaseOutside");
   } else {
      /* Sua ação relativa ao evento onRelease */
      /* Remove o Listener */
      stage.removeEventListener(MouseEvent.MOUSE_UP, btRelease);
      trace("onRelease");
   }
}

Deixa eu explicar o código. Primeiro adicionamos um Listener ao nosso botão criado. O listener vai ser acionado quando clicarmos com o botão esquerdo do Mouse. Ao clicar, a função btPress é acionada.

Na função btPress, adiciono um outro Listener, dessa vez em nosso palco (stage). O listener vai ser acionado quando soltarmos o botão esquerdo do Mouse. Ao soltar, a função btRelease é acionada.

Na função btRelease, verificamos se o alvo (target) é o nosso botão, se for, removemos o listener do palco para que não fique sendo acionado quando não deve e usamos nossa ação referente ao onRelease. Se o alvo não for nosso botão, removemos o Listener do palco e usamos nossa ação referente ao onReleaseOutside.

Teste seu filme e vejam que agora temos um evento onReleaseOutside em ActionScript 3. Nesse exemplo mostra a real vantagem de se usar Listener em nossos Eventos, em uma função podemos usar para vários MovieClips e botões, mas isso é assunto para uma outra dica.

Qualquer dúvida é só falar.

[]s