Ir para conteúdo

Arquivado

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

Evandro PH

[Flash] Problema com AS3 e MovieClip

Recommended Posts

E aí galera do fórum Imasters, depois de muito trabalho pra entender o AS3, surgiram algumas novas dúvidas...

 

Estou com um problema para fazer referência a um objeto que fica dentro de um movieclip.

O comando é este:

 

for (var ind:int = 0; ind < mcs.length; ind++) {
	this["estampa.mc" + ind].addEventListener(MouseEvent.CLICK, mudaClipe);	
	this["cor" + ind].addEventListener(MouseEvent.CLICK, mudaClipe);
}

 

Na linha 2, estou me referenciando a um movieclip mc0 até mc5 (que estão declarados numa array).

Os mc0 até mc5 ficam dentro de um movieclip chamado "estampa", mas quando tento adicionar um event listener (linha 2) o flash mostra um erro:

 

 

TypeError: Error #1010: Um termo é indefinido e não tem propriedades.
at base2_fla::MainTimeline/frame1().
Algum erro ou falha no código?


nossa, este AS3 ainda vai me deixar louco...

Troquei o this["estampa.mc" + ind].add.....

por mcs[ind].add.... e funcionou. Esta array mcs tem o nome dos movieclips e agora funciona mesmo que eles estejam em moveiclips diferentes, basta eu referenciar o caminho diretamente na array:

 

var mcs:Array = [base.mc0, estampa.mc1, estampa.mc2, estampa.mc3, estampa.mc4, filtro.mc5, mc6];
não sei se é o melhor método, mas por enquanto está funcionando...
Se ocorrer um novo erro, volto aqui pedindo ajuda denovo =)
Evandro

Compartilhar este post


Link para o post
Compartilhar em outros sites

As vezes não entendo como algo tão simples parece tão difícil... só troquei o:

this["estampa.mc" + ind].addEventListener(MouseEvent.CLICK, mudaClipe);

por

mcs[ind].addEventListener(MouseEvent.CLICK, mudaClipe);

e na array mcs coloquei o caminho completo dos MCs (estampa.mc0......)

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.