Ir para conteúdo

POWERED BY:

Arquivado

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

keepkuler

[Resolvido]Como integrar classes diferentes

Recommended Posts

Olá Gente,

 

O que acontece!? Tenho a seguinte situação: estou iniciando um novo site em AS3 e resolvi mudar um pouco o modo de produzir e parei numa barreira que não sei se há ou não como fazer.

 

Como normalmente faria: eu tenho um arquivo principal.fla, onde tenho minha biblioteca com os MC's e na barra de propriedade aponto para minha classe Principal.as, até ai normal.

 

Em Principal.as inicio a programação para estruturar o site e adiciono os MC's que usaria como páginas internas do site. Para cada "página" eu costumo criar um MC vazio e na propriedade deste MC eu aponto a classe referente. Exemplo, MC Galeria, na propriedade do MC eu aponto a classe, Galeria.as. Funciona!

 

Mas, o que acontece, eu acabo com um monte de MC vazio na minha biblioteca, então, o que estou querendo fazer, ter um MC vazio e adiciona-lo somente quando precisar e via AS fazer a referencia necessaria.

 

Onde estou tendo dificuldade, eu tenho uma classe Principal, onde inicio tudo, como já disse. Agora eu tenho uma outra classe chamada, DestaqueHome, que é a programação que fará a exibição de algumas imagens randômicas, mas, como não vinculei essa classe DestaqueHome a nenhum MC, não consigo ter acesso ao stage.

 

Minha pergunta é: como faço para acessar o stage e assim a um MC vazio já adicionado no stage?

 

Agradeço a atenção de todos!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Um monte de MC vazio a toa realmente não é bom...

 

Na verdade, não é necessário criar um MC vazio e setar sua classe principal.

 

Se você utilizar o campo Document Class que tem no Flash, esta classe vai ser a principal do arquivo e terá acesso ao stage nativamente e poderá utilizar o getChildByName para acessar qualquer MovieClip que esteja lá...

 

http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode utilizar a diretiva import também.

ABs

 

Opa!

Então, eu estou usando import. No Principal.as eu importo a classe que quero e crio e passo via paramentro o nome do MC que quero trabalhar. O meu problema estava no inverso, exemplo, tenho a classe DestaqueHome.as e dela acessar minha classe Principal.as.

 

Mas consegui resolver usando parent. Na classe DestaqueHome.as eu recebo o nome do movieclip e guardo em uma variável alvo:MovieClip, quando preciso chamar uma função do Principal.as eu consegui fazendo:

 

var raiz:MovieClip = MovieClip(alvo.parent);
raiz.teste();

Agradeço a ajuda de vocês!

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.