Ir para conteúdo

POWERED BY:

Arquivado

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

cassiano óliver

variaveis em txt...

Recommended Posts

no site em q estou trabalhando, haverá uma galeria de fotos, onde estou tentando pegas as descrições das fotos em um arquivo txt...

o codigo é o seguinte:

onEnterFrame = function() {	TxtCapa.text = "carregando texto...";	CarregaTxt = new LoadVars();	CarregaTxt.onLoad = function (carregado) {		if (carregado) {			TxtCapa.text = this.TextoCapa;			delete onEnterFrame;		}		else {			TxtCapa.text = "Falha ao carregar texto";		}	}	CarregaTxt.load("texto_capa.txt");}// não coloquei todo o código do MCL pois o problema não é com ele hahhahavar carregador:MovieClipLoader = new MovieClipLoader();var carrega:Object = new Object();function CarregaFoto():Void {	carrega.onLoadProgress = function (fotos:MovieClip, carregado:Number, total:Number):Void {		...	}	carrega.onLoadComplete = function():Void {		...		desc.text = CarregaTxt[ImgCapa + i]; // aqui onde não estou conseguindo automatizar...				// tentei assim e tbm não deu certo				//desc.text = CarregaTxt.ImgCapa + i;	}	carrega.onLoadInit = function() {		...	}}CarregaFoto();carregador.addListener(carrega);// nos botoes...b1.onRelease = function() {	carregador.loadClip("imagens/escritorio/fachada.jpg", fotos);	i = 1; // variavel que indicará qual foto está sendo visualizada}

 

se eu fizer assim:

...carrega.onLoadComplete = function():Void {	...		if (i == 1) {			  desc.text = CarregaTxt.imgCapa1;		}		if (i == 2) {			  desc.text = CarregaTxt.imgCapa2;		}		e assim por diante...}...

 

funciona! tem uma galeria, q tem + de 20 fotos, daria um pokinho de trabalho fazer desta forma....

aí quiz automatizar, pegando a var i da foto e concatenando ao "ImgCapa" que está no txt, mas está aparecendo "NaN" ou "undefined"...

 

onde estou errando???

Compartilhar este post


Link para o post
Compartilhar em outros sites

Antes de tudo: se você quiser que o texto de uma caixa venha de uma função (texto.text = funcao()) essa função que dar um return com o valor, saca:

 

function pegaTexto(n:Number):String {	if (n == 1) {		return "texto 1";	} else {		return "texto qualquer";	}}seu_texto.text = pegaTexto(1);
Primeiro definimos que a função precisa de um parâmetro que seja um número. Se você mandar sem querer uma string, o Debugger vai acusar um erro de Type mismatch (tipo errado de dados). Aí, dizemos que ela retorna uma String, um texto. As ações da função são bem entendíveis. :P

 

Agora, com base nesse conhecimento, tenta reconstruir a sua função:

 

onEnterFrame = function() {	TxtCapa.text = "carregando texto...";	CarregaTxt = new LoadVars();	CarregaTxt.onLoad = function (carregado) {		if (carregado) {			TxtCapa.text = this.TextoCapa;			delete onEnterFrame;		}		else {			TxtCapa.text = "Falha ao carregar texto";		}	}	CarregaTxt.load("texto_capa.txt");}
Dica: tira esse onEnterFrame que parace bem perdido aí :P

 

Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

hum...

tendi seu raciocínio...

 

mas já consegui resolver aki...

ficando assim o codigo..

...carrega.onLoadComplete = function():Void {		...		desc.text = CarregaTxt["ImgCapa" + i]; }...

só acrescentei as aspas...

agora ta perfeito!

 

abraços..

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.