Design e programação criativa na web.

Um simples menu feito em as3. Utilizam-se a mesma funçao para todos os botoes. O próximo menu será dinamico (XML) para que se possa criar o menu a partir do ficheiro externo XML.

Este é o código utilizado:

//

import flash.display.StageScaleMode;
stage.scaleMode = StageScaleMode.NO_SCALE;

this.button1.texto.texto_btn.text = “Button 1”;
this.button2.texto.texto_btn.text = “Button 2”;
this.button3.texto.texto_btn.text = “Button 3”;
this.button4.texto.texto_btn.text = “Button 4”;

//

button1.addEventListener(MouseEvent.CLICK, onClick);
button1.addEventListener(MouseEvent.MOUSE_OVER, fadeDown);
button2.addEventListener(MouseEvent.MOUSE_OVER, fadeDown);
button1.addEventListener(MouseEvent.MOUSE_OUT, fadeUp);
button2.addEventListener(MouseEvent.MOUSE_OUT, fadeUp);
button3.addEventListener(MouseEvent.MOUSE_OVER, fadeDown);
button4.addEventListener(MouseEvent.MOUSE_OVER, fadeDown);
button3.addEventListener(MouseEvent.MOUSE_OUT, fadeUp);
button4.addEventListener(MouseEvent.MOUSE_OUT, fadeUp);
button1.mouseChildren = false;
button2.mouseChildren = false;
button3.mouseChildren = false;
button4.mouseChildren = false;

function fade(event:Event):void {
event.target.useHandCursor = true;
event.target.buttonMode = true;
event.target.nextFrame();
}
function fade2(event:Event):void {
event.target.prevFrame();
}
function fadeDown(event:MouseEvent):void {
event.target.removeEventListener(Event.ENTER_FRAME,fade2);
event.target.addEventListener(Event.ENTER_FRAME,fade);
}
function fadeUp(event:MouseEvent):void {
event.target.removeEventListener(Event.ENTER_FRAME,fade);
event.target.addEventListener(Event.ENTER_FRAME,fade2);
}

function onClick(event:MouseEvent):void {
var request:URLRequest = new URLRequest(“http://www.google.com”);
navigateToURL(request,”_SELF”);
}

//

O movieclip que é utilizado para o botao é o mesmo. Para ter mais botoes, basta copiar o botao e mudar o nome da instancia.

As funçoes “fade” e “fade2” controlam o movimento dos moviclips (timeline) e as funçoes “fadeUp” e “fadeDown” contêm os enterframes para que a animaçao seja fluida.

A funçao “onClick” contem o URL do botao 1.

Qualquer dúvida nao hesitem em perguntar.
Veja o exemplo.

O .fla está disponivel para download aqui.

->Download

Comentários a: "Criar um menu em actionscript 3.0" (7)

  1. Very good. Le he echado un vistazo a tu blog y me parece excelente. Ahora sólo te pido 20 segundos de tu vida para que leas alguna de las historias de http://www.hiperbreve.blogspot.com Quiero lectores críticos que dejen sus comentarios y, si crees que merezco un voto, pues adelante.

    Hiperbreves S.A. en la categoría de ficción.

  2. Achei muito bom o tutorial, mas como faria se eu quisesse dar load em um swf externo ou ir para uma determinado movieclip e mandar um gotoandplay por exemplo?

  3. Poderia ajudar-me a fazer botões numa animação que fiz?
    Eu ja fiz grande parte da animação em flash mas agora estou a ter problemas na parte da programaçao em action script 3.
    Obrigada.
    Sao somente quatro botoes, e queria que cada um deles desse acesso a determinado ponto da time line.

    Obrigado
    Inês

    • Olá. Simplesmente tens de fazer algo assim:

      nome_do_botao.addEventListener(MouseEvent.MOUSE_DOWN, nome_da_funçao);

      function nome_da_funçao (evt:MouseEvent):void{
      gotoAndPlay(numero do frame);
      }

      Espero que ajude.

  4. Boa tarde!
    Por favor, não consigo fazer o download deste arquivo, podes me ajudar?
    Grata e parabéns pelo excelente blog!!

  5. […] Criar um menu em actionscript 3.0 Outubro, 2008 6 comentários 3 […]

Deixe uma Resposta

Preencha os seus detalhes abaixo ou clique num ícone para iniciar sessão:

Logótipo da WordPress.com

Está a comentar usando a sua conta WordPress.com Terminar Sessão / Alterar )

Imagem do Twitter

Está a comentar usando a sua conta Twitter Terminar Sessão / Alterar )

Facebook photo

Está a comentar usando a sua conta Facebook Terminar Sessão / Alterar )

Google+ photo

Está a comentar usando a sua conta Google+ Terminar Sessão / Alterar )

Connecting to %s

Nuvem de etiquetas

%d bloggers like this: