Comunidad de diseño web y desarrollo en internet online

muchos botones y muchos clips.. ayudenme!

Citar            
MensajeEscrito el 03 Oct 2006 05:51 pm
este es mi problema

tengo como 94 botones (boton_1, boton_2, boton_3 etc....)
y tengo 94 clips (clip1, clip2, clip3.. etc..)

en el primer frame he puesto los siguiente:

_root.boton1.onPress = function() {
_root.clip1.gotoAndStop(2);
}

hasta ahi todo facil... pero tengo ke hacerlo para los 94 botones!!!!! hay alguna forma mas facil???

algo asi como

_root.botonN. onPress = function() {
_root.clipN.gotoAndStop(2);
}

N = del 1 al 94.
o poner n =1 con el press del boton 1 o algo asi... gracias... (si me resuelven esto mi problema real se soluciona enormente.. porke al hacer clic en boton uno se realizan muchicimas cosas y no kiero hacer el codigo para cada boton.
tengo la idea pero no se como plantear el codigo.. gracias.

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

msie
Citar            
MensajeEscrito el 03 Oct 2006 08:32 pm
prueba a utilizar

Código :

for( i = 0; i<94; i++){
    _root['boton'+(i+1)].id = i+1;
     _root['boton'+(i+1)].onPress = function(){
            _root['clip'+this.id].gotoAndStop(2);
     }
}

Por shogoki

355 de clabLevel

4 tutoriales

 

Venezuela

firefox
Citar            
MensajeEscrito el 03 Oct 2006 08:41 pm
Lo que buscás es algo raro :? . Específicamente, el código que necesitás es algo así:

Código :

for (i = 1; i <= 94; i++) {
      _root["boton" + i].onPress = function () {
            //
            // Acá van tus acciones
            //
      };
}



Pero, para ser franco, no sé si sirve, nunca usé un for () de esa manera, es decir, con botones. Lo que tendrías que hacer es usar clases o prototipos, porque es demasiado difícil trabajar con 94 botones. Sin contar que Flash se toma su tiempo para procesar tanta información.

Creo que tendrías que considerar seriamente el replantearte el proyecto :o . Complicarse en exceso no es muy recomendable. No sé que es exactamente lo que tratás de hacer (aunque supongo que serán thumbnails de algún tipo), pero estoy seguro de que hay una manera más fácil de hacerlo.

Ahora bien, puntualmente, lo que vos pedís es: _root["lo que sea"].laPropiedadADefinir

Donde "lo que sea" puede ser una variable o un código como puse en el ejemplo de arriba.

Espero te sirva de algo.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie
Citar            
MensajeEscrito el 03 Oct 2006 08:45 pm
si me explicaras tantito el codigo te lo agradecería.

aca esta el codigo ke estoy utilizando a ver si me lo pueden resumir, veo muchas cosas ke se repiten. gracias

Código :

_root.lista_imagenes.bot_1_1.onRollOver = function() {
   _root.lista_imagenes.n_1_1._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_1_1._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_1_1._y;
}
_root.lista_imagenes.bot_1_2.onRollOver = function() {
   _root.lista_imagenes.n_1_2._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_1_2._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_1_2._y;
}
_root.lista_imagenes.bot_1_3.onRollOver = function() {
   _root.lista_imagenes.n_1_3._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_1_3._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_1_3._y;
}
_root.lista_imagenes.bot_1_4.onRollOver = function() {
   _root.lista_imagenes.n_1_4._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_1_4._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_1_4._y;
}
_root.lista_imagenes.bot_1_5.onRollOver = function() {
   _root.lista_imagenes.n_1_5._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_1_5._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_1_5._y;
}
_root.lista_imagenes.bot_2_1.onRollOver = function() {
   _root.lista_imagenes.n_2_1._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_2_1._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_2_1._y;
}
_root.lista_imagenes.bot_2_2.onRollOver = function() {
   _root.lista_imagenes.n_2_2._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_2_2._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_2_2._y;
}
_root.lista_imagenes.bot_2_3.onRollOver = function() {
   _root.lista_imagenes.n_2_3._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_2_3._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_2_3._y;
}
_root.lista_imagenes.bot_2_4.onRollOver = function() {
   _root.lista_imagenes.n_2_4._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_2_4._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_2_4._y;
}
_root.lista_imagenes.bot_2_5.onRollOver = function() {
   _root.lista_imagenes.n_2_5._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_2_5._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_2_5._y;
}
_root.lista_imagenes.bot_3_1.onRollOver = function() {
   _root.lista_imagenes.n_3_1._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_3_1._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_3_1._y;
}
_root.lista_imagenes.bot_3_2.onRollOver = function() {
   _root.lista_imagenes.n_3_2._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_3_2._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_3_2._y;
}
_root.lista_imagenes.bot_3_3.onRollOver = function() {
   _root.lista_imagenes.n_3_3._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_3_3._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_3_3._y;
}
_root.lista_imagenes.bot_3_4.onRollOver = function() {
   _root.lista_imagenes.n_3_4._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_3_4._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_3_4._y;
}
_root.lista_imagenes.bot_3_5.onRollOver = function() {
   _root.lista_imagenes.n_3_5._alpha = 80;
   _root.lista_imagenes.fondito.gotoAndPlay(1);
   _root.lista_imagenes.fondito._x = _root.lista_imagenes.bot_3_5._x - 48;
   _root.lista_imagenes.fondito._y = _root.lista_imagenes.bot_3_5._y;
}
//rollouts!
_root.lista_imagenes.bot_1_1.onRollOut = function() {
   _root.lista_imagenes.n_1_1._alpha = 30;
}
_root.lista_imagenes.bot_1_2.onRollOut = function() {
   _root.lista_imagenes.n_1_2._alpha = 30;
}
_root.lista_imagenes.bot_1_3.onRollOut = function() {
   _root.lista_imagenes.n_1_3._alpha = 30;
}
_root.lista_imagenes.bot_1_4.onRollOut = function() {
   _root.lista_imagenes.n_1_4._alpha = 30;
}
_root.lista_imagenes.bot_1_5.onRollOut = function() {
   _root.lista_imagenes.n_1_5._alpha = 30;
}
_root.lista_imagenes.bot_2_1.onRollOut = function() {
   _root.lista_imagenes.n_2_1._alpha = 30;
}
_root.lista_imagenes.bot_2_2.onRollOut = function() {
   _root.lista_imagenes.n_2_2._alpha = 30;
}
_root.lista_imagenes.bot_2_3.onRollOut = function() {
   _root.lista_imagenes.n_2_3._alpha = 30;
}
_root.lista_imagenes.bot_2_4.onRollOut = function() {
   _root.lista_imagenes.n_2_4._alpha = 30;
}
_root.lista_imagenes.bot_2_5.onRollOut = function() {
   _root.lista_imagenes.n_2_5._alpha = 30;
}
_root.lista_imagenes.bot_3_1.onRollOut = function() {
   _root.lista_imagenes.n_3_1._alpha = 30;
}
_root.lista_imagenes.bot_3_2.onRollOut = function() {
   _root.lista_imagenes.n_3_2._alpha = 30;
}
_root.lista_imagenes.bot_3_3.onRollOut = function() {
   _root.lista_imagenes.n_3_3._alpha = 30;
}
_root.lista_imagenes.bot_3_4.onRollOut = function() {
   _root.lista_imagenes.n_3_4._alpha = 30;
}
_root.lista_imagenes.bot_3_5.onRollOut = function() {
   _root.lista_imagenes.n_3_5._alpha = 30;
}

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

msie
Citar            
MensajeEscrito el 03 Oct 2006 08:48 pm
quiero algo asi como ke al hacer clic en un boton... me cree una variable digamos n = 1

y luego poner algo asi como: _root.mimovieclip + "n". gotoAndStop(2) <--- kiero la forma correcta de esto.

para ke mi mc mimovieclip1 vaya al frame 2

Por LordGraphic3

84 de clabLevel



Genero:Masculino  

desde?

msie
Citar            
MensajeEscrito el 03 Oct 2006 08:56 pm
sip, en efecto prueba como te dije arriba

Código :

for(i=1; i<6; i++){
     _root.lista_imagenes['bot_1_'+i].id = i;
    _root.lista_imagenes['bot_1_'+i].onRollOver = function() {
         _root.lista_imagenes['n_1_'+this.id]._alpha = 80;
         _root.lista_imagenes.fondito.gotoAndPlay(1);
         _root.lista_imagenes.fondito._x = this._x - 48;
         _root.lista_imagenes.fondito._y = this._y;
    }
}


esto es para los botones que comienza con bot_1_n; para los demas, solo tendrias que cambiar el nombre

Por shogoki

355 de clabLevel

4 tutoriales

 

Venezuela

firefox
Citar            
MensajeEscrito el 03 Oct 2006 08:59 pm
:P Lo que te digo es que uses _root["lo que sea"].gotoAndPlay (2)

Lo que esté entre los corchetes después del _root (no uses un punto) ya sea una variable o un string y una o más variables; se "une" y queda como si hubieses usado un nombre concreto.

Entonces esto:

Código :

var numero:Number = 1;
_root["objeto" + numero]._x = Stage.width / 2;
_root["objeto" + numero]._y = Stage.height / 2;


Es exactamente igual a esto:

Código :

objeto1._x = Stage.width / 2;
objeto1._y = Stage.height / 2;


(todo esto estaría, ubicado en el primer fotograma de la película)


Hacé la prueba en un archivo con un solo movieClip y fijate como trabaja. Después contame.


Por otro lado, simple curiosidad: ¿Se reproduce a una velocidad aceptable o anda lento?

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie

 

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