Comunidad de diseño web y desarrollo en internet online

Problema de Script. Urgente

Citar            
MensajeEscrito el 02 Mar 2007 02:13 pm
Hola muy buenas, tengo una duda, porque no se si existe.
Si:
onPress es presionar el botón
onRollOver es pasar por encima del botón
onRollOut es salirse del botón

¿Que tendría que poner para decirle que esté desactivado despues de estar presionado?

Lo que quiero hacer es mediante un tuto que había en cristalab que un botón presionado cuando deje de estarlo (porque hemos presionado otro botón) haga el MC que tengo cuando hago un onRollOver pero al revés. No se si me he explicado.

Muchas gracias.

Por francishernando

35 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 02 Mar 2007 05:46 pm
Variables booleanas. Si no entendí mal lo que pedís, esa es la solución.

Con un onPress definís que el botón está presionado, con el onRelease que ya no lo está. Si la variable que definiste es igual a false y el botón está en un estado distinto al inicial, realizás la animación.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie
Citar            
MensajeEscrito el 02 Mar 2007 07:13 pm
Hola HernanRivas, tengo este codigo:

Código :

{
   this.enabled = false;
   this.gotoAndStop("_active");
};
MovieClip.prototype.out = function()
{
   this.enabled = true;
   this.gotoAndStop("_down");
};
MovieClip.prototype.deselect = function()
{
   this.enabled = true;
   this.gotoAndStop("_up");
};
MovieClip.prototype.disable = function()
{
   this.enabled = false;
   this.gotoAndStop("_disable");
};

clip1.onPress = function()
{
   trace("Soy un botón");
   this.select();
   loadMovieNum(".swf", 1);
   clip2.deselect();
   clip3.deselect();
   };
clip1.onRollOut = function()
{
   trace("Soy un botón");
   this.out();
};
clip2.onPress = function()
{
   trace("Soy un botón");
   this.select();
   loadMovieNum(".swf", 1);
   clip1.deselect();
   clip3.deselect();
   };
clip2.onRollOut = function()
{
   trace("Soy un botón");
   this.out();
};
clip3.onPress = function()
{
   trace("Soy un botón");
   this.select();
   loadMovieNum(".swf", 1);
   clip1.deselect();
   clip2.deselect();
   };
clip3.onRollOut = function()
{
   trace("Soy un botón");
   this.out();
};


He creado tres MC que se llaman clip1, clip2 y clip3 y dentro de cada MC le he metido distintos comportamientos _up, _over, _down, _active, _disable.

Me falta meterle el código para que haga un moviclip (que sería igual que el que tiene 'onRollOut' cuando el boton (ejem. clip1) deja de estar activo porque hemos seleccionado otro botón. Igual que hacen en esta web los botones http://www.neosmedia.net/home.html

Mucas gracias de antemano.

Por francishernando

35 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 03 Mar 2007 02:26 pm
A ver, cuando seleccionás un botón, seteás una variable, digamos botonSeleccionado que debe ser igual al nombre de botón que acabás de seleccionar. Después, ponés que al presionar un botón cualquiera, se desabilite el botón indicado por la variable y listo. Pensá que la variable se debe definir debajo del código que desabilita el botón, de otro modo, el boton a desabilitar pasaría a ser el que estás presionando y desabilitarías al botón que tratás de habilitar.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie
Citar            
MensajeEscrito el 05 Mar 2007 11:48 am
Hola Hernan Rivas, se lo que quieres decir, pero, ¿como se pone el código para decir "al presionar un botón cualquiera, se desabilite el botón indicado"?. No soy un crack en esto y me cuesta meter el código, Perdona por la pesadez, pero es que lo necesito.

Muchas gracias.

Por francishernando

35 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 05 Mar 2007 01:16 pm
A ver, en primer lugar, cambiás esto:

Código :

clip1.onPress = function()
{
   trace("Soy un botón");
   this.select();
   loadMovieNum(".swf", 1);
   clip2.deselect();
   clip3.deselect();
   };
clip1.onRollOut = function()
{
   trace("Soy un botón");
   this.out();
};
clip2.onPress = function()
{
   trace("Soy un botón");
   this.select();
   loadMovieNum(".swf", 1);
   clip1.deselect();
   clip3.deselect();
   };
clip2.onRollOut = function()
{
   trace("Soy un botón");
   this.out();
};
clip3.onPress = function()
{
   trace("Soy un botón");
   this.select();
   loadMovieNum(".swf", 1);
   clip1.deselect();
   clip2.deselect();
   };
clip3.onRollOut = function()
{
   trace("Soy un botón");
   this.out();
};
Por esto:

Código :

clip1.onPress = clip2.onPress = clip3.onPress = function()
{
   trace("Soy un botón");
   this.select();
   loadMovieNum(".swf", 1);
   clip2.deselect();
   clip3.deselect();
   };
clip1.onRollOut = clip2.onRollOut = clip3.onRollOut = function()
{
   trace("Soy un botón");
   this.out();
};
Ahora, luego de hacer eso, cambiás el código de la siguinete manera:

Código :

clip1.onPress = clip2.onPress = clip3.onPress = function()
{
   trace("Soy un botón");
   this.select();
   loadMovieNum(".swf", 1);
   //
   // Imagino que la animacion de deseleccionar no la hacés por código, en todo caso, reemplazá por lo que corresponda
   _root[seleccionado].gotoAndPlay (animacionDesseleccionar);
   //
   clip2.deselect();
   clip3.deselect();
   seleccionado = this._name;
   };
clip1.onRollOut = clip2.onRollOut = clip3.onRollOut = function()
{
   trace("Soy un botón");
   this.out();
};

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie
Citar            
MensajeEscrito el 05 Mar 2007 07:15 pm
Hola de nuevo Hernan, muchas gracias por todo, no he podido hacer nada con tus explicaciones porque no me aclaro. No te quiero hacer perder más tiempo. Me tendrías que subir un fla. de ejemplo aunque no creo que tengas tiempo. De todas formas muchas gracias.

Te pongo mi mail por si acaso [email protected]

Por francishernando

35 de clabLevel



Genero:Masculino  

msie
Citar            
MensajeEscrito el 06 Mar 2007 01:46 pm
Hagamos al revés, mandame tu .fla y lo veo. Armar todo un ejemplo desde 0 me consumiría mucho más tiempo.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

msie

 

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