Comunidad de diseño web y desarrollo en internet online

Selección y deselección de un Clip de pelicula como botón

Citar            
MensajeEscrito el 05 Jul 2007 01:00 pm
Tengo 6 clips de película como botón. Al pulsar van a la posición _down de botón, pero si vuelvo a pulsar ya no me hace nada. Sólo me admite un clic. ¿Cómo puedo hacer que pulsas y seleccionas, vuelves a pulsar y deseleccionas?

A la vez llevan cada uno un precio que tendría que sumar en función de si están seleccionados o no.

Llevo intetándolo un montón y no hay manera.
Gracias y un saludo

Por mmlucas

15 de clabLevel



 

msie
Citar            
MensajeEscrito el 05 Jul 2007 07:09 pm
Probá con esto:

Código :

boton.presionado = false;
boton.onRelease = function () {
this.presionado = !this.presionado;
this._alpha = (this.presionado)? 50 : 100;
};
(el código anterior funciona también para los MCs)

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

firefox
Citar            
MensajeEscrito el 05 Jul 2007 07:11 pm

Código :

boton.onPress  = function (){
 pul = !pul;
 if (pul){
  //acciones de down
 }
 else{
  //acciones de up
 }
};

Por Teseo

SWAT Team

1780 de clabLevel

14 tutoriales

Genero:Masculino   SWAT

firefox
Citar            
MensajeEscrito el 09 Jul 2007 11:07 am
He probado con lo que me habéis dicho pero nada. Yo lo que quiero es:
hago clic: selecciono;
hago clic (en el mismo botón): deselecciono;
hago otra vez clic (en el mismo botón): selecciono;
es decir, con el mismo evento: al hacer clic, una vez selecciono y a la siguiente no; y al hacer ésto, los demas botones no se ven afectados.
Un lío.
No soy capaz
Gracias por vuestra ayuda

Por mmlucas

15 de clabLevel



 

msie
Citar            
MensajeEscrito el 09 Jul 2007 03:39 pm
Eso es justamente lo que hacen éstos códigos, si no te funcionan es porque no los estás usando bien.

Van en un fotograma y necesitás tener instanciado un MC o un botón con el nombre "boton" (sin acento).

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

firefox
Citar            
MensajeEscrito el 10 Jul 2007 10:59 am
Creo que eso es lo que he hecho. He sustituido botón por mc1, mc2, etc, porque así se llaman mis botones, y copiado el código tal cual en un fotograma.
El segúndo código también lo he probado, pegado en un fotograma:
mc1.onRelease = function (){
pul = !pul;
if (pul){
//acciones de down
this.gotoAndStop("_down");

} else{
//acciones de up
this.gotoAndStop("_up");

}};
Las acciones que he puesto es que vaya al fotógrama en el que aparece el botón (mc)seleccionado y deseleccionado respectivamente, y nada!! ¿Qué he hecho mal?
Un saludo y gracias

Por mmlucas

15 de clabLevel



 

msie
Citar            
MensajeEscrito el 10 Jul 2007 02:02 pm
El código de Teseo sólo funciona con MCs, no con botones. Eso se debe a que no se pueden hacer gotos en los botones.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

firefox
Citar            
MensajeEscrito el 11 Jul 2007 08:07 am
Son mc pero simulan botones. Por lo tanto, si que aceptarían el goto ¿no?
Saludos

Por mmlucas

15 de clabLevel



 

msie
Citar            
MensajeEscrito el 13 Jul 2007 03:14 pm
Deberían, por lo que asumo que el error está en otro lado. Igual, no sabría decir exactamente dónde.

Como ya dije antes, los códigos funcionan.

Por HernanRivas

Claber

3416 de clabLevel

26 tutoriales

 

Argentina

firefox
Citar            
MensajeEscrito el 16 Jul 2007 06:16 am
Al final he puesto este código y me funciona, además me va sumando. Le digo ir al fotograma 10 porque allí es donde tengo el clip marcado, y luego al fotograma 1, es donde está en posición de deseleccionado:
onClipEvent(MouseDown){
if (!seleccionado){
var Contenedor:Number=442.59;
seleccionado=true;
gotoAndStop(10);
_root.sumaContenedor.text=Number(_root.SumaColor.text)+Number(Contenedor);
_root.sumaContenedor._visible=false;
_root.createTextField("contenedor_txt", 525, 40, 100, 50);
_root.contenedor_txt.text="Contenedor de Residuos";
_root.contenedor_txt._visible=true;

_root.Resultado.text=Math.floor(Number(_root.sumaContenedor.text)*100)/100;
_root.Resultado._visible=true;
} else {
var Contenedor:Number=0;
seleccionado=false;
gotoAndStop(1);
_root.sumaContenedor.text=Number(_root.SumaColor.text)+Number(Contenedor);
_root.sumaContenedor._visible=false;
_root.createTextField("contenedor_txt", 525, 40, 100, 50);
_root.contenedor_txt._visible=false;
_root.contenedor_txt.text="";

_root.Resultado.text=Math.floor(Number(_root.sumaContenedor.text)*100)/100;
_root.Resultado._visible=true;
}
}
Muchas gracias y un saludo

Por mmlucas

15 de clabLevel



 

msie

 

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