Comunidad de diseño web y desarrollo en internet online

Ocultar texto de varios botones a la vez

Citar            
MensajeEscrito el 16 Mar 2007 10:36 am
Hola a todos, hoy me estreno en este foro ya que la verdad hasta ahora no me ahabia hecho falta escribir para resolver las dudas...

Bueno la cuestión es que con un bucle FOR he instanciado 30 clips en el escenario sacados de un XML. Dentro de cada clip he creado un texto (createTextField()...) que aparece al lado del botoncillo:

Código :

for (var i:Number = 0; i<Data.length; i++) {
      var npunto:String = "punto"+Data[i]["codigo"];
                //guardo en un array el nombre de instancia de cada punto
                _root.puntos[i] = "punto"+Data[i]["codigo"]; 

      mc = contenedor_mc.attachMovie("boton_mc", npunto, 100+i);
      mc.createTextField ("texto", 1, -95, -8, 85, 20);
                mc.texto.text = Data[i]["nombre"];
//otras historias...
}


El problema es que cuando quiero ocultar SOLO el texto de cada botón hago otro bucle usando el array puntos[i] que contenia los nombres de instancia de los puntos, y no me funciona. No se por qué, si seran las rutas... Me devuelve UNDEFINED...

Código :

on(release){
//ocultar texto de los botones
   for (var i = 0; i<Data.length; i++) {
      _root.contenedor_mc.puntos[i].texto._visible = false;
      trace("ocultar "+_root.puntos[i]);
   }
   
}


A ver si alguno de vosotros sabe un poco más que yo...(a poco :wink: ) y me echa un cable !!

Por nichar

1 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 18 Mar 2007 04:07 am
busca en las referencias eval() y set() te van a ayudar mucho
te voy a dar un ejemplo para ocultar cada mc con un click, esta escrito de memoria a si es que puede fallar:

Código :

for (i=0; i<10; i++) {
   this.attachMovie("miMC", "miMC"+i, this.getNextHighestDepth());
   set("this.miMC"+i+"._y", i*10);
   eval("this.miMC"+i).onRelease = function() {
      this._visible = false;
   };
}

Por Inyaka

Claber

3176 de clabLevel

9 tutoriales
2 articulos

Genero:Masculino   Desarrollador de GAIA

Programador y fotógrafo

firefox
Citar            
MensajeEscrito el 18 Mar 2007 05:49 pm
gracias inyaka,

Ya lo he conseguido( vaya tonteria y las vueltas que he dado). Sin usar eval(). En principio era problema de usar la sintaxis adecuada:


Código :

on (release)
{
        var i = 0;
        for (i=0; i < Data.length; i++)
        {
            _root.contenedor_mc["punto" + Data[i].codigo].texto._visible = false;
        } 
}


Mi problema era que no extraía bien la ruta y el nombre de instancia de cada botón, que esta guardado en el array Datos :
contenedor_mc["punto" + Data[i].codigo]

Por nichar

1 de clabLevel



Genero:Masculino  

msie

 

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