Ir para conteúdo

Arquivado

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

Webtalking

[Resolvido] Controlar ordem das imagens carregadas

Recommended Posts

Oi Galera,

Seguinte tenho o seguinte código.

 

var myTextLoader:URLLoader = new URLLoader();

myTextLoader.dataFormat = URLLoaderDataFormat.VARIABLES;

myTextLoader.addEventListener(Event.COMPLETE, onLoaded);

function onLoaded(e:Event):void

{

nImages = e.target.data.nImages;

for (var i:Number = 0; i<e.target.data.nImages; i++)

{

arrID = e.target.data["id"+(i+1)];

criarImages(e.target.data["img"+(i+1)]);

}

 

}

 

myTextLoader.load(new URLRequest("images/fornecedores/fornecedores.txt?" + Math.random()));

 

//Criar e posicionar as imagens;

function criarImages(strImage:String):void

{

 

//Carrega as imagens externas

var carregador:Loader = new Loader();

carregador.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleto);

var requisicao:URLRequest = new URLRequest(strImage);

carregador.load(requisicao);

 

}

 

//Esse evento acontece qdo as imagens são carregadas

function onCompleto(e:Event):void

{

//Cria clipe vazio para inserir a imagem

var clip_mc:MovieClip = new MovieClip();

clip_mc.addChild(e.target.content);

 

//Redimensiona o clipe;

var wOrig:Number = clip_mc.width;

var hOrig:Number = clip_mc.height;

if (clip_mc.width > wImg)

{

var wTemp:Number = wImg;

var hTemp:Number = (wImg*hOrig)/wOrig;

clip_mc.width = wTemp;

clip_mc.height = hTemp;

}

if (clip_mc.height > hImg)

{

hTemp = hImg;

wTemp = (hImg*wOrig)/hOrig;

clip_mc.width = wTemp;

clip_mc.height = hTemp;

}

clip_mc.x = t;

if (clip_mc.height < hImg)

{

clip_mc.y=(hImg-clip_mc.height)/2;

}

//Mudo o nome do clipe para controle

clip_mc.name = "clipe" + nNome;

nNome += 1;

clip_mc.addEventListener(Event.ENTER_FRAME,moveClip);

clip_mc.addEventListener(MouseEvent.CLICK,acaoBT);

clip_mc.addEventListener(MouseEvent.MOUSE_OVER,cortaMove);

clip_mc.addEventListener(MouseEvent.MOUSE_OUT,cortaMove);

clip_mc.buttonMode = true;

t += clip_mc.width + 10;

vazio_mc.addChild(clip_mc);

}

 

O problema é que as imagens são carregadas e colocadas no stage a medida que são carregadas, e como depende do tamanho da imagem e da conexão de web, elas nunca são carregadas na mesma ordem.

O que preciso é que nessa função onCompleto(e:Event), eu consiga receber algum tipo de parâmetro pra saber qual imagem foi carregada, que nesse momento em que chamo a função carregador.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleto), eu consiga passar algum tipo de parâmetro para a função.

 

Como posso fazer isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolvi.

Foi só mudar a chamada da função onCompleto assim:

carregador.contentLoaderInfo.addEventListener(Event.COMPLETE, function(e:Event):void {onCompleto(PARAMETRO1,PARAMETRO2); });

 

e também mudar a própria função assim:

function onCompleto(PARAMETRO1,PARAMETRO2):void

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.