Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

huperez

MC que altera sobrepondo ou indo p/ traz dos demais

Recommended Posts

Bom pessoalsou novo por aqui, gostaria de compartilhar oq ja aprendi com o flash e tirar duvidas com a galera que trabalha com a mesma ferramentaesse é meu 1º topico, vamos ao que interssa..Minha duvida é a seguinte:Eu quero fazer um menu onde um moveclip sobrepõe o outro de forma que quando se clica no movie de traz ele venha p/ frente e deixa o resto atras (em outras palavras seria como aquelas caixinhas do Windows com abas.. quando se clica na de traz ela vem p/ 1° plano e deixa as anteriores em 2° , 3° ,4°plano...______ ________ ________| \__|_________\__|_________\| ||________________________________|

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom amigo isso no flash é feito com swapDepthsvamos lá crie um dois mcs no palco e estancio de bt1 e bt2no 1 frame coloque estas açoes bt1.onRelease=function(){ bt1.swapDepths(1); bt1.swapDepths(2);}bt2.onRelease=function(){ bt2.swapDepths(1); bt2.swapDepths(2);}abraço!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom amigo isso no flash é feito com swapDepthsvamos lá crie um dois mcs no palco e estancio de bt1 e bt2no 1 frame coloque estas açoes bt1.onRelease=function(){ bt1.swapDepths(1); bt1.swapDepths(2);}bt2.onRelease=function(){ bt2.swapDepths(1); bt2.swapDepths(2);}abraço!!

Po cara .. perfeito.. brigadão pela ajuda.... tão simples e eu não sabia... vlw mesmo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo..

Ficou legal e funcionou..

mas eu não intendi qual é a desse comando swapDepths

fica um pouco dificil de entender pq na primeira linha da função você diz q o valor é 1 e an debaixo q o valor é 2.

oq exatamente ele faz??

fiquei com duvida pq a minha ideia era usar mais de dois botoes...

quando tentei percebi q ao clicar no botao de traz em certos momentos aguns botoes q ja estao atraz sobrepoe outro

 

mais o menos assim

 

a 1° ordem é ---> bt1 sobre bt2 sobre bt3 sobre bt4

 

se clicar no bt2 o cerreto seria ficar

bt2 sobre bt1 sobre bt3 sobre bt4

 

mas acontece algo assim

bt2 sobre bt1 sobre bt4 sobre bt3

 

brigadão

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo..

Ficou legal e funcionou..

mas eu não intendi qual é a desse comando swapDepths

fica um pouco dificil de entender pq na primeira linha da função você diz q o valor é 1 e an debaixo q o valor é 2.

oq exatamente ele faz??

fiquei com duvida pq a minha ideia era usar mais de dois botoes...

quando tentei percebi q ao clicar no botao de traz em certos momentos aguns botoes q ja estao atraz sobrepoe outro

 

mais o menos assim

 

a 1° ordem é ---> bt1 sobre bt2 sobre bt3 sobre bt4

 

se clicar no bt2 o cerreto seria ficar

bt2 sobre bt1 sobre bt3 sobre bt4

 

mas acontece algo assim

bt2 sobre bt1 sobre bt4 sobre bt3

 

brigadão

então, o exemplo que lhe disseram foi bom, mas há uma maneira melhor

 

primeiro vo explicar como funciona o swapDepths

 

é o seguinte, o swapDepths muda a ordem dos movie clips no palco, como se fossem camadas, tipo assim

 

camada 4 -----

camada 3 -----

camada 2 -----

camada 1 -----

 

qto maior o numero, mais em cima ela fica

 

por exemplo,

 

temos 2 MCs instanciados:

instancia1 e instancia2

 

então você faz instancia1.swapDepths(4) e de instancia2.swapDepths(2)

 

o MC instancia1 ficará por cima do instancia2 pois 4 é maior q 2

 

sendo q o problema é q se você tiver mtos movieclips, fica complicado, já pensou se você tem 30 mcs no palco, fica um saco você ter q passar esse numeros um por um, por isso existe o comando getNextHighestDepth(), q traduzindo fica algo como "pegue a profundidade (camada) mais alta"

 

ou seja, se você fizer instancia.swapDepths(this.getNextHighestDepth()) ele vai ficar na camada mais alta

 

ai você faz o seguinte...

 

bt1.onPress = function () {	 this.swapDepths (this._parent.getNextHighestDepth());}bt2.onPress = function () {	 this.swapDepths (this._parent.getNextHighestDepth());}bt3.onPress = function () {	 this.swapDepths (this._parent.getNextHighestDepth());}
ou seja, cada vez q ele clicar no botão, esse botão vai ficar por cima de todos

 

tem q colocar this._parent nesse caso pq você quer q mude a ordem das camadas do palco e n de dentro do movieclip

 

agora se você quiser enfeitar, faz um for ai xD

 

instancia como tu ta fazendo ai msm bt1, bt2, bt3 etc... e faz o seguinte comando

 

QuantidadeBotoes = X; // No lugar o "X" coloque o numero de botões que existefor (i = 1; i <= QuantidadeBotoes; i++) {	 this["bt" + i].onPress = function () {		  this.swapDepths (this._parent.getNextHighestDepth());	 }}
é possivel tb você mexer em outros movieclips e n só naquele q você tranformou em botão

 

espero q tenha ajudado, qq coisa, posta ae ^_^

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.