Jump to content


Photo

Rollover E Rollout


  • This topic is locked This topic is locked
3 replies to this topic

#1 Henrique P.L.

Henrique P.L.

    Novato no fórum

  • Usuários
  • 8 posts
  • Sexo:Não informado

Posted 02/01/2006, 18:29

Alô, pessoal!
Estou aqui com mais um tutorial básico, agora mexendo com um pouco de Action Script.
Confiram aí um efeito de RollOver e RollOut.

• O que é RollOver e RollOut?

RollOver é, resumidamente, a ação do mouse de passar o mouse em cima do objeto em que esta action estiver dentro.

RollOut é o oposto do RollOver, ou seja, é a ação do mouse ao tirá-lo do objeto em que esta action estiver dentro.

Conforme o andamente do tutorial você irão entender melhor o que eu estou dizendo.
Bom, mãos à obra:

Posted Image

• Crie um novo arquivo e deixe o tamanho do palco que quiser, eu deixei 250x200 no meu.

• Mude o fps de sua animação para o número que quiser, eu utilizei 60.
( Se você não sabe como fazer isso, confira meu outro tutorial, chamado "Motion Tween" )

• Faça qualquer objeto, como por exemplo um círculo ou um retângulo. Vá em Insert/Convert to Symbol [ Inserir/Converter para Símbolo ] ou F8 e crie um MovieClip. Dê istância ( nome ) à ele. Por exemplo, objeto.

Posted Image

Posted Image

• Dentro deste MovieClip, faça uma animação, do frame 1 ao que você desejar, do objeto aumentando ou diminuindo de tamanho. Depois faça o mesmo movimento só que inverso, como se estivesse voltando à sua forma original.

• Faça um novo Layer [ Camada ] e nele coloque um Stop(); no Frame 1 e no Frame em que acaba a ação dele aumentar ou diminuir. É para ficar mais ou menos assim:

Posted Image

• Certo, agora saindo de dentro do Movie Clip, crie uma nova camada acima da do objeto e nela, faça um retângulo de qualquer cor, não importa, pois ele não irá aparecer, ele será nossa área de clique, nosso link invisível.

Posted Image

• Vá em Insert/Convert to Symbol [ Inserir/Converter para Símbolo ] ou F8 e crie um Button. Em suas propriedades, deixe Alpha 0%.

Posted Image

• Agora chegou a hora, vamos usar um pouco de Action Script: Vá em Window/Actions [ Janela/Ações ] ou F9 e mude a janela para o Expert Mode.

Posted Image

• Vamos começar. Escreva:

on (rollOver) {
objeto.gotoAndPlay(2);
}
on (rollOut) {
objeto.gotoAndPlay(9);
}

Explicando:

on (rollOver) {

Ao [ on ] passar o mouse em cima. [ RollOver ]

objeto.gotoAndPlay(2);
}

MovieClip de nome "objeto" vai para a frame 2 e termina a ação [ { ]

on (rollOut) {
Ao [ on ] tirar o mouse em cima. [ RollOut ]

objeto.gotoAndPlay(9);
}

MovieClip de nome "objeto" vai para a frame 9 e termina a ação [ { ]


O número 9 que eu coloquei no "gotoAndPlay" do RollOut é da minha animação, sua pode ser um número diferente.
O que é preciso saber é que o número da frame que ter que ir é um depois do Stop();, e o 2 é invariável.
O primeiro Frame é o objeto estático, imóvel. Ao passar o mouse em cima, aquele MovieClip vai para a Frame 2, que vai rodar até o próximo Stop();, que, no caso aqui, é a Frame 9.

Para se tornar uma verdadeiro botão com função, é preciso colocar o on (release){} [ Ao clicar ].
Bom, este é para ser o resultado final, não exatamente assim, mas seguindo a idéia.

Clique aqui para visualizar o resultado final

Este efeito pode ser usado em botões que precisam de um retorno na animação após tirar o mouse e tem outras diversas funções.

Bom, eu acho que é isso, pessoal!
Espero ter ajudado vocês e até a próxima! ;)

Abraços,

Henrique P.L.
Usuário de Flash desde 2003

#2 aln

aln

    'Design'

  • Usuários
  • 745 posts
  • Sexo:Não informado
  • Localidade:Mogi-guaçu / SP

Posted 10/01/2006, 02:14

Esse tem muita gente que tem dúvidas, vou indicar pro pessoal (y).

Parabéns dinovo!
www.allanmc.com.br

#3 Saruman

Saruman

    Veterano

  • Usuários
  • 1112 posts
  • Sexo:Masculino
  • Localidade:São Paulo, SP

Posted 10/01/2006, 17:47

Procurem se possivel utilizar a sintaxe correta: que seria instanciar este MC com um nome qualquer, "meu_mc" por exemplo, e na linha de tempo onde ele está usar:
meu_mc.onRollOver=function(){
//seu codigo aqui
}
Isso ajuda muito, principalmente em projetos grandes, para voce nao se perder...
import Profile;

var saruman:Profile = new Profile();

saruman.nome = new String("Tiago S. Kaneta");

saruman.localizacao = new Array("São Paulo","SP");

#4 aln

aln

    'Design'

  • Usuários
  • 745 posts
  • Sexo:Não informado
  • Localidade:Mogi-guaçu / SP

Posted 10/01/2006, 22:34

Eu uso um efeito parecido em meu site, importante é que funciona e está bem organizado quando vou atualizar (y).
www.allanmc.com.br




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq