Ir para conteúdo

POWERED BY:

Arquivado

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

Rafael Rocha

addEventListener para objetos dinamico

Recommended Posts

Bom, esse é meu primeiro post, estou começando no as3, vamos lá!

 

estou criando uns elementos dinamico e gostaria de adicionar um "addEventListener" para eles, mas como eu não tenho o nome de instacia deles eu nao sei fazer =\

olha como esta meu código que adiciona o mesmo elemento no stage.

 

 

private function paginacaoDestaquePrimario():void{

var totalBolinhas:int = 4;

var espacamentoXBolinhas:int = 16;

var posicaoBolinha:int

 

for(var i=0; i<totalBolinhas; i++){

var bolinha:bt_nav_destaque = new bt_nav_destaque();

posicaoBolinha = (i*espacamentoXBolinhas)*-1;

bolinha.x = posicaoBolinha;

destaque_principal_mc.numeroImagens.addChild(bolinha);

 

destaque_principal_mc.numeroImagens.(????????????).addEventListener(MouseEvent.MOUSE_OUT, teste)

}

}

 

 

nao tenho ideia do que botar dentro do "(??????)" para que todos os elementos criados dentro do meu FOR possam ter o click do mouse.

 

Abs.

Rafael Rocha

Compartilhar este post


Link para o post
Compartilhar em outros sites

é simples:

private function paginacaoDestaquePrimario():void{
var totalBolinhas:int = 4;
var espacamentoXBolinhas:int = 16; 
var posicaoBolinha:int

for(var i=0; i<totalBolinhas; i++){
var bolinha:bt_nav_destaque = new bt_nav_destaque();
posicaoBolinha = (i*espacamentoXBolinhas)*-1;
bolinha.x = posicaoBolinha;
destaque_principal_mc.numeroImagens.addChild(bolinha);

bolinha.addEventListener(MouseEvent.MOUSE_OUT, teste) 
}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu colacaria com for em um array. Eu tive um problema parecido com o box 2d , que detectava colisões se um objeto estava no chão

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara o eventlistener deve estar DENTRO da sua classe que é criada dinamicamente:

 

suponhamos:

 

class MyClass{

 

public function setEventListeners(){

this.addEventlistener(MouseEvent.CLICK,fucntion(){

trace("Hello World!");

});

}

}

 

class MainClass{

 

public function MainClass(){

for(var i:int = 0; i<10; i++)

var test:MyClass = new MyClass();

test.setEventListeners();

}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só complementando, você pode dar nome para suas instancias, usando o atributo name, e eu também colocaria dentro de uma Array e usaria um loop.

 

Abs

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.