Ir para conteúdo

POWERED BY:

Arquivado

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

brunorios

[Resolvido] Como centralizar MovieClip localizado em SWF externo

Recommended Posts

salve galera,

 

o problema é o seguinte:

 

tenho um index.swf que carrega um swf_externo.swf no palco...

 

dentro do swf_externo.swf tenho um mc "MovieClip_mc" que eu preciso centralizar no stage ao redimensionar a janela...

 

acho q o problema é que o index.swf nao esta passando as configuracoes abaixo para o swf_externo...

 

stage.align = StageAlign.TOP_LEFT;

stage.scaleMode = StageScaleMode.NO_SCALE;

 

por isso nao esta alinhando corretamente...

 

tentei acrescentar essas configuracoes no swf_externo.swf e nao adiantou...

 

o que ta havendo?

 

Exemplo: http://www.flashmedia.com.br/bug/index.swf

Arquivos fonte: http://www.flashmedia.com.br/bug/exemplo_bug.zip

 

Valeu!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

o ponto de registro do MovieClip está marcado no centro dele. Então a posição dele, pra ser no meio, deve ser igual aos tamanhos do palco dividido por 2...

 

	MovieClip_mc.x = stage.stageWidth/2;
	MovieClip_mc.y = stage.stageHeight/2;

dentro do mcResize

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala michel! tudo bem?

 

primeiramente obrigado pelo seu trabalho com os video-tutoriais que me ajudaram bastante na transicao do as2 pro as3...

 

entao vamos lá!

 

quando você disse a solucao pensei! PUTZZZZ, como não vi isso? a principio era isso mesmo... mas na verdade eu ja tinha tentado isso no caso real do site que é um pouco mais complexo e nao deu certo...

 

agora recriei fielmente a estrutura do meu site e descobri o problema...

 

o swf_externo.swf está sendo carregado dentro do mc "conteudo" do filme principal...

 

conteudo.addChild(secaoLoader);

e esse mc "conteudo" que abriga o swf_externo, tambem esta sendo alinhado ao mesmo tempo...

 

aí está o conflito, estamos alinhando o "conteudo" que por sua vez está abrigando o swf_externo.swf que por sua vez está tentando alinhar o "MovieClip_mc" que deveria ficar no centro...

 

tem alguma forma de resolver?

 

atualizei o exemplo e os arquivos fonte, da uma olhadinha se tiver tempo!

 

Exemplo: http://www.flashmedia.com.br/bug/index.swf

Arquivos fonte: http://www.flashmedia.com.br/bug/exemplo_bug.zip

 

atenciosamente,

bruno rios

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala Bruno, beleza?

 

velho, nesse caso você precisa transformar as coordenadas globais do palco (o centro do index) em coordenadas locais do swf externo, que vai ser o posicionamento do seu MovieClip.

 

dentro do mcResize vai ficar algo assim:

 

	var xGlobal:Number = (stage.stageWidth)/2;
	var yGlobal:Number = (stage.stageHeight)/2;
	var pGlobal:Point = new Point(xGlobal,yGlobal);

	var pLocal:Point = this.globalToLocal(pGlobal);

	MovieClip_mc.x = pLocal.x;
	MovieClip_mc.y = pLocal.y;

Compartilhar este post


Link para o post
Compartilhar em outros sites

caramba michel, foi direto ao ponto!

 

eu nem imaginava que existiam essas funcoes...

 

funcionou perfeitamente!

 

muito obrigado!

um grande abraço!

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.