Ir para conteúdo

POWERED BY:

Arquivado

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

DiegoWebdesigner

Botões chamam swfs externos com preloader AS2

Recommended Posts

Bom pessoal, lá venho eu aqui mais uma vez pedindo a ajuda de voçês, vou detalhar direitinho para voçês: TIPO

tenho um swf chamado de (PRINCIPAL) que é o index, nele tenho 4 botões que quando precionados, chamam um movie clipe instanciado de "menu" sem aspas deslizando para o palco em uma determinada posição em x e y, o movie clipe instanciado de "menu" tem dentro dele 4 barras de 400x400 que contem o conteudo de cada pagina, a action que usei nos botões foi essa:

 

on (press) {

_root.menu.Xpos=1000

}

 

isso sendo que em cada botão _root.menu.Xpos=posição, tem um valor diferente de 1000. certo? até aqui tuuuudo bem!

vamos começar a complicar, então quando clico em algum botão chama o movie clipe para uma determinada posição no palco referente ao conteudo relacionado com o botão, consegui fazer um preload para carregar o swf externo, a action ficou assim: onde !!!

 

mc_preload = movie clipe instanciado de "mc_preload" sem aspas,

dentro do mc_preload tenho outro movie clipe instanciado de "barra" sem aspas,

e abaixo da barra tenho um Dinamic text instanciado de "porcentagem" sem aspas,

e um movie clipe vazio com registration no canto superior esquerdo instanciado de "mc_recipiente" sem aspas, que voçê deve coloca-lo no local onde voçê quer que carregue seu swf externo

 

 

 

 

/*coloca a barra de carregamento invisivel.*/

_root.menu.mc_preload._visible = false;

/*cria a variavel que será o MovieClipLoader.*/

var carregar:MovieClipLoader = new MovieClipLoader();

/*cria a variavel informante, que informará sobre o status do carregamento.*/

var informante:Object = new Object();

/*coloca o informante como ouvinte/espectador do nosso MovieClipLoader.*/

carregar.addListener(informante);

/*manda nosso MovieClipLoader carregar "meu_arquivo.swf" em "_root.mc_recipiente".*/

carregar.loadClip("contato.swf",_root.menu.mc_recipiente);

/*quando o informante disser que o carregamento começou execultar esta função.*/

informante.onLoadStart = function() {

_root.menu.mc_preload.barra._xscale = 0;

_root.menu.mc_preload._visible = true;

};

/*enquanto o informante disser que o carregamento está em progresso,esta função será execultada em loop.*/

informante.onLoadProgress = function(mc, carregado, total) {

var calculo:Number = (Math.floor((carregado/total)*100));

_root.menu.mc_preload.porcentagem.text = String(calculo+"%");

_root.menu.mc_preload.barra._xscale = calculo;

};

/*quando o informante disser que o carregamento completou, esta função será execultada.*/

informante.onLoadComplete = function() {

_root.menu.mc_preload._visible = false;

};

/*se por acaso o informante disser que o carregamento deu erro, esta função será execultada.*/

informante.onLoadError = function() {

};

 

 

 

então la vai meu apêloooooooo, hehehe

 

quando o filme principal é carregado, ele ja carrega automaticamente o swf externo, queria que o swf externo só carregasse quando o botão fosse precionado entenderam?

 

e mais uma dulvida, no swf externo conteudo referente ao botão conteudo queria criar varios botões, que ao serem clicados chamem outro swf externo, sendo que em um mesmo mc_recipiente, e que quando clicar em um botão, carregue o swf externo com preloader, e que quando outro botão for clicado, descarregue o que foi chamado anteriormente e carregue o que foi solicitado,

 

ex: tenho 5 botões

 

btn1

btn2

btn3

btn4

btn5

 

e quando clicar no btn1, chame o swf externo 01.swf

e quando clicar no btn2, descarregue o swf externo 01.swf e carregue o swf externo 02.swf e assim por diante, para que assim não fiquem amontoados um em cima do outro,

 

entenderam, ufaaaaaaaaaaaaaaa, escrevi pra caramba, alguem me ajuda por favor.

espero ter sido claro, obg.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Creio que o seu problema seja bem mais que esse, o caso é que você não deu atenção ao carregamento do .swf

 

Ai está o que você fez.

Você se esqueceu de alterar o código que você copiou, para que fucioonasse a sua maneira.

/*coloca a barra de carregamento invisivel.*/
_root.menu.mc_preload._visible = false;
/*cria a variavel que será o MovieClipLoader.*/
var carregar:MovieClipLoader = new MovieClipLoader();
/*cria a variavel informante, que informará sobre o status do carregamento.*/
var informante:Object = new Object();
/*coloca o informante como ouvinte/espectador do nosso MovieClipLoader.*/
carregar.addListener(informante);
/*manda nosso MovieClipLoader carregar "meu_arquivo.swf" em "_root.mc_recipiente".*/
ERRO==>>>carregar.loadClip("contato.swf",_root.menu.mc_recipiente);<==ERRO
/*quando o informante disser que o carregamento começou execultar esta função.*/
informante.onLoadStart = function() {
_root.menu.mc_preload.barra._xscale = 0;
_root.menu.mc_preload._visible = true;
};
/*enquanto o informante disser que o carregamento está em progresso,esta função será execultada em loop.*/
informante.onLoadProgress = function(mc, carregado, total) {
var calculo:Number = (Math.floor((carregado/total)*100));
_root.menu.mc_preload.porcentagem.text = String(calculo+"%");
_root.menu.mc_preload.barra._xscale = calculo;
};
/*quando o informante disser que o carregamento completou, esta função será execultada.*/
informante.onLoadComplete = function() {
_root.menu.mc_preload._visible = false;
};
/*se por acaso o informante disser que o carregamento deu erro, esta função será execultada.*/
informante.onLoadError = function() {
};

Seria assim:

/*coloca a barra de carregamento invisivel.*/
_root.menu.mc_preload._visible = false;
/*cria a variavel que será o MovieClipLoader.*/
var carregar:MovieClipLoader = new MovieClipLoader();
/*cria a variavel informante, que informará sobre o status do carregamento.*/
var informante:Object = new Object();
/*coloca o informante como ouvinte/espectador do nosso MovieClipLoader.*/
carregar.addListener(informante);
/*quando o informante disser que o carregamento começou execultar esta função.*/
informante.onLoadStart = function() {
_root.menu.mc_preload.barra._xscale = 0;
_root.menu.mc_preload._visible = true;
};
/*enquanto o informante disser que o carregamento está em progresso,esta função será execultada em loop.*/
informante.onLoadProgress = function(mc, carregado, total) {
var calculo:Number = (Math.floor((carregado/total)*100));
_root.menu.mc_preload.porcentagem.text = String(calculo+"%");
_root.menu.mc_preload.barra._xscale = calculo;
};
/*quando o informante disser que o carregamento completou, esta função será execultada.*/
informante.onLoadComplete = function() {
_root.menu.mc_preload._visible = false;
};
/*se por acaso o informante disser que o carregamento deu erro, esta função será execultada.*/
informante.onLoadError = function() {
};
SeuBotao.OnRelease = function(){
/*manda nosso MovieClipLoader carregar "meu_arquivo.swf" em "_root.mc_recipiente".*/
carregar.loadClip("SEUCLIP.swf",_root.menu.mc_recipiente);
};

Espero ter ajudado.

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.