Nesse post vamos trabalhar com botões em AS 3.0 então ao trabalho, no actionScript 2(AS2) para fazer ações com botões e movieclips era da seguinte forma:
meubotao.onRollOver = function():Void{
//faz alguma coisa
}
Code language: JavaScript (javascript)
Em acitonScript 3.0(AS 3.0) houve algumas mudanças, de início você tem que adicionar os eventos no movieclip e falar qual a função que vai ser chamada veja o exemplo abaixo.
meubotao.addEventListener(MouseEvent.MOUSE_OVER, minhaFuncao);
function minhaFuncao(e:MouseEvent):void{
//faz alguma coisa
}
Code language: JavaScript (javascript)
Na linha um adicionamos o evento especificamos o Categoria de evento no exemplo é o evento de mouse o mouse_over igual ao onRollOver do actionScript 2.0. Na assinatura da função temos de que definir o tipo de parâmetro que a função vai receber, neste caso a variável “e” do tipo MouseEvent, lembrem toda a vez que adicionarmos um evento a função que é chamada tem que receber um parâmetro do tipo do evento que foi adicionado.
O “this” que usamos na função para fazer referência a quem chama a função em AS2 foi substituído pelo “target” do evento. Obs. Em outros casos o this tem o uso normal. Vamos complementar o nosso exemplo:
meubotao.buttonMode = true;
meubotao.addEventListener(MouseEvent.MOUSE_OVER, minhaFuncao);
function minhaFuncao(e:MouseEvent):void{
e.target.alpha = 0.5
}
Code language: JavaScript (javascript)
Na linha 1 foi alterado um parâmetro no nosso botão(movieClip) “buttonMode” essa propriedade surgiu em AS3 e por padrão ela é inicializada com “false” então para o nosso botão ficar com aquela “mãozinha” quando o mouse passar sobre o nosso movieclip. Na linha 4 estamos modificando a propriedade alpha do target, ou seja, de quem chamou a função nesse caso o “meubotao”.
Notem que diferente de AS2 a propriedade alpha escrevesse sem o “_” isso para outras propriedades como x, y e rotation. Outras propriedades como _xscale e _yscale agora são scaleX e scaleY. Vamos então usar o TweenLite nos eventos dos botôes(movieClips).
Lembrando quem não possui as classes do TweenLite clique aqui para baixar.
import gs.TweenLite;
import gs.easing.*;
meubotao.buttonMode = true;
meubotao.addEventListener(MouseEvent.MOUSE_OVER, over);
meubotao.addEventListener(MouseEvent.MOUSE_OUT, out);
meubotao.addEventListener(MouseEvent.CLICK, clicou);
function over(e:MouseEvent):void{
TweenLite.to(e.target, 0.7, {alpha:0.7, ease:Expo.easeOut});
}
function out(e:MouseEvent):void{
TweenLite.to(e.target, 0.7, {alpha:1, ease:Expo.easeOut});
}
function clicou(e:MouseEvent):void{
trace("clicou");
}
Code language: JavaScript (javascript)
No último exemplo implementamos as ações over, out e clique do movieclip.
Até o próximo post.

Deixe um comentário