Ir para conteúdo

POWERED BY:

Arquivado

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

André Rambor

[Resolvido] Container pai

Recommended Posts

Boa noite (madrugada), este é o meu primeiro post e espero não estar sendo repetitivo. Busquei no fórum mas não encontrei o que me ajudasse.

Estou criando um site relativamente simples (meu primeiro em flash) e estou com um problema: tenho um swf principal, dentro dele um container onde carrego swf's externos. Até aí beleza, a questão é que dentro de um externo qualquer, preciso inserir um link que carregue um swf no mesmo container que este externo se encontra. O mais perto que eu cheguei foi isso:

if(me.target.name == "areaVejaTodosBtn")

{

var teste:Loader = new Loader;

teste.load(new URLRequest("arquivo.swf"));

me.target.parent.parent.parent.parent.parent.parent.container.addChild(teste);

}

 

É estranho mas quase deu, o problema é que o "arquivo.swf" acaba ficando "sobre" o conteúdo atual no container e acabam aparecendo os dois ao mesmo tempo.

 

Ainda não trabalho com programação orientada à objetos, então gostaria de resolver isso com action na TimeLine mesmo.

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Atualizando a minha dúvida. Devido ao meu pouco conhecimento demorei pra entender. O que acontece de errado é que pra eu abrir este swf onde eu quero, eu preciso ter acesso à variável loader.load que está no swf principal. Preciso apenas então descobrir como acesso esta variável do swf principal.

Mais uma vez obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

como brunobispo mostrou no outro tópico, você não precisa fazer o swf filho acessar a variável

que esta no pai, faça o filho "avisar" que quer fazer algo (usando um evento)

 

então coloque no filho:

 

dispatchEvent(new Event("AbrirAreaVejaTodosBtn", true))

e no pai:

 

var teste:Loader = new Loader;
teste.load(new URLRequest("filho.swf"));
teste.addEventListener("AbrirAreaVejaTodosBtn", onFilhoChamou);
function onFilhoChamou(e:Event):void {
    // chama o "arquivo.swf"
}

 

 

pronto, agora você faz o pai carregar o outro swf, como o código esta nele, você vai ter acesso a "loader.load" como queria

 

 

[]´s

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado ao Bruno e ao Eder, problema resolvido. O meu problema com o a programação orientada à objetos é que eu não entendo como o as se comunica com o swf. Não sei como, quando e onde inserir Liteners para as funções, não sei não entendo quem deve extender as propriedades de quem e por aí vai. Mas a forma que o Eder mostrou eu entendi e resolveu os meu probblemas, Muito grato à todos.

 

EDER você EH O REI CARA!!!!!

 

 

TO A DOIS DIAS TENTANDO RESOLVER!!! E você AKI O TEMPO TODO COM A SOLUCAO!

 

TAUM MAIS SIMPLES DO QUE TUDO QUE ACHEI NA INTERNET!

 

OBRIGADO CARA!!!!!!!

 

:D

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.