Ir para conteúdo

POWERED BY:

Arquivado

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

Med Key

Carregar um swf externo e continuar navegando usando o mesmo botão.

Recommended Posts

Olá pessoal,

 

Estou com uma dúvida que não sei se é possível realizar.

 

Em AS3 estou usando um sistema de navegação onde eu chamo as páginas que ficam fora do palco através da Classe Tweem Lite, conforme clicamos em um determinado botão, ele chama a página selecionada e puxa a que estava no palco. Cada página dessa possui um swf externo, alguns pegam informações em um xml e tem um que pega de um banco de dados Mysql. O problema é que toda vez que eu clico em um botão para chamar alguma página o swf é recarregado. será que tem como eu carregar o swf e mante-lo carregado, para não ter que carregar denovo toda vez que tiver que mudar de página?

 

Este é o sistema de navegação:

import gs.TweenLite;
import fl.transitions.easing.*

var menuTotal:Number = 8;
var posIn:Number = 35;
var posOut:Number = 807.8;

for (var j:int = 1; j<= menuTotal; j++)
{
	root["btnBotao_" + j].addEventListener(MouseEvent.CLICK, btn_click);
	root["btnBotao_" + j].buttonMode = true;
	//
	root["mcPage_" + j].x = posOut;
}

function btn_click(ev:MouseEvent):void
{
	var nPage:String = ev.target.name.substring(9,ev.target.name.length);
	var nAtual:Number = uint(nPage);//convertendo string para number
	//
	TweenLite.to(root["mcPage_" + nPage], 1, {x:35});
	//
	for (var i:int = 1; i <= menuTotal; i++)
	{
		if (i != nAtual)
		{
			TweenLite.to(root["mcPage_" + i], 1, {x:807.8});
		}
	}
}

Este é um exemplo de um mesmo botão desse carregando um swf externo.

 

var carregaArquivo:Loader = new Loader();
mcPage_1.mcArquivo.addChild ( carregaArquivo );
btnBotao_1.addEventListener(MouseEvent.CLICK, arquivo_btn);
function arquivo_btn (ev:MouseEvent):void
{  
	req.url = "arquivo.swf";
	carregaShow.load( req );
}

Quem puder ajudar eu agradeço!

Compartilhar este post


Link para o post
Compartilhar em outros sites

o que você teria que alterar é nessa parte de carregamento, seria até simples, cria uma variável para booleana para controlar se o swf já foi carregado, e se foi não carregar de novo

 

var foiCarregado:Boolean=false

var carregaArquivo:Loader = new Loader();
mcPage_1.mcArquivo.addChild ( carregaArquivo );
btnBotao_1.addEventListener(MouseEvent.CLICK, arquivo_btn);
function arquivo_btn (ev:MouseEvent):void
{  
	if(foiCarregado == false){
	   req.url = "arquivo.swf";
	   carregaShow.load( req );
	   foiCarregado =true
	}else{
		carregaArquivo.visible = true
	}
}

para ocultar o swf, você teria que usar carregaArquivo.visible = false

 

seria essa a lógica

 

 

[]´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.