Ir para conteúdo

POWERED BY:

Arquivado

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

Street

[Resolvido] Não animar um SWF externo

Recommended Posts

Olá a todos!

 

Sou principiante no AS3 e estou tendo problemas. É o seguinte: estou carregando um SWF externo diretamente para o palco segundo o código abaixo:

 

var loader:Loader = new Loader()

loader.load( new URLRequest("animacao.swf") )
addChild(loader)

O arquivo "animação.swf" é uma animação simples feita diretamente no palco.

 

Pelo que entendi (me corrijam se eu estiver errado), ao carregar um arquivo SWF este é tratado como MovieClip.

O que eu quero é que este arquivo SWF, ao ser carregado, não execute sua animação (que será disparada ao ser pressionado um botão). Seria algo como:

 

loader.stop()

Alguem tem alguma idéia?

 

Obrigado desde já.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Basta que o arquivo animação.swf tenha uma layer para o action e receba no frame 1 --> stop();

Quando for acionar o botão para que inicie a animação faça rodar a partir do frame 2.

Compartilhar este post


Link para o post
Compartilhar em outros sites

...

Pelo que entendi (me corrijam se eu estiver errado), ao carregar um arquivo SWF este é tratado como MovieClip.

O que eu quero é que este arquivo SWF, ao ser carregado, não execute sua animação (que será disparada ao ser pressionado um botão).

...

 

 

ao carregar você tem um objeto da classe Loader, e não um MovieClip. Portanto não possui o método stop().

 

você pode fazer assim:

 

var loader:Loader = new Loader();
//Declarei a variável que vai guardar o MovieClip aqui
var mc:MovieClip;

loader.load(new URLRequest("animacao.swf"));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loaderComplete);

function loaderComplete(evt:Event):void{
        // Aqui eu transformo em MovieClip o objeto DisplayObject da propriedade content, do loader
	mc = MovieClip(loader.content);
	addChild(mc);
        // Agora você possui stop(), play(), gotoAnd..., etc
	mc.stop()
}

agora é só colocar o mc.play() na função de click do seu botão.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Também consegui, adorei.

 

Muito obrigada Michel.

 

Não tive tempo de editar o post anterior.

 

Publiquei em uma página que uso para testes: Clique aqui

 

Vlw mestre, tô me puxando.

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.