Comunidad de diseño web y desarrollo en internet online

Error al incrementar variable numerica...

Citar            
MensajeEscrito el 07 Nov 2010 08:09 am
Hola, la verdad es que estoy perdido... no entiendo cual es el error.
Veran tengo un codigo en ActionScript 2.0, es algo asi:

Código :

for (var i:Number = 1; i <= totalDeImagenes; i++)
{
       this["botonMin"+i].onRelease = function()
      {
           //Cargo la imagen en el contenedor grande... 
      cargador.loadClip("dyh/upload/contenidos/imagenes/"+carpetaImagenes+"/"+arrayConImagenes[i], contenedorDeImagenes);      
       }      
}



Donde arrayConImagenes es un array con el nombre de todas las imagenes a cargar en el movieclip contenedorDeImagenes y el codigo no funciona!

Lo extraño es que si pongo:

Código :

       this["botonMin"+i].onRelease = function()
      {
           //Cargo la imagen en el contenedor grande... 
      cargador.loadClip("dyh/upload/contenidos/imagenes/"+carpetaImagenes+"/"+arrayConImagenes[1], contenedorDeImagenes);      
       }


Funciona a la perfeccion, es decir, si utilizo una variable autoincremental NO FUNCIONA! Pero si pongo directamente un numero en el indice del array funciona sin problemas.
Ayuda por favor!

Por yosoyzone

21 de clabLevel



 

firefox
Citar            
MensajeEscrito el 08 Nov 2010 01:58 pm
La variable i se piza en cada loop, si botonMin es un MovieClip (debe serlo para que esto funcione) sería:

Código ActionScript :

for (var i:Number = 1; i <= totalDeImagenes; i++)
{
      this["botonMin"+i].nr = i
       this["botonMin"+i].onRelease = function()
      {
           //Cargo la imagen en el contenedor grande... 
      cargador.loadClip("dyh/upload/contenidos/imagenes/"+carpetaImagenes+"/"+arrayConImagenes[this.nr], contenedorDeImagenes);      
       }      
}


Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Nov 2010 06:33 am
Muchas gracias!!! Funciono a la perfecccion!!! DIsculpa que halla demorado en responder.

Ahora me surge una duda...

Como se abran dado cuenta lo que estoy hacien es instanciar en el escenario botones dinamicamente con sus funciones "listeners".

Para instanciar los botones hago lo siguiente:

Código ActionScript :

for(i=1; i < algo; i++)
{
   //botonTrans es el "identifier" del button en la biblioteca.
   this.attachMovie ("botonTrans", "botonMin" + i, this.getNextHighestDepth());
}



Asi como esta funciona perfectamente, pero quisiera saber si hay que hacer eso del .nr o aqui no hace falta.
Saludos!!

Por yosoyzone

21 de clabLevel



 

msie8
Citar            
MensajeEscrito el 23 Nov 2010 10:19 am
"Eso del nr" copia el índice a la línea de tiempo para que después lo use el botón, si necesitas hacer lo mismo, entonces puedes hacerlo

Jorge

Por solisarg

BOFH

13669 de clabLevel

4 tutoriales
5 articulos

Genero:Masculino   Bastard Operators From Hell Premio_Secretos

Argentina

firefox
Citar            
MensajeEscrito el 23 Nov 2010 06:16 pm
anida los ciclos.... usa solo 1 para crear, acomodar, poner eventos..... en ese ciclo insertas la variable a cada botón

Por nasho

Claber

908 de clabLevel

1 tutorial

Genero:Masculino  

Web Developer

firefox
Citar            
MensajeEscrito el 26 Nov 2010 04:24 am
Si, los ciclos estan anidados... creo...

Quiero decir, por cada iteracion del for hago esto:

Instancio contenedor de miniatura.
Cargo el jpg externo.
Creo el boton que va sobre la miniatura.
Creo la funcion que contrala al boton.

Gracias a ambos!

Por yosoyzone

21 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.