Comunidad de diseño web y desarrollo en internet online

Desactivar un botón en AS3

Citar            
MensajeEscrito el 01 Sep 2011 03:50 pm
Hola.

Me pasa una cosa de lo más rara y tiene pinta de ser una chorrada increible. Me explico.

Supongamos un botón btnEmpezar que quiero desactivar. Lo hago así:

Código :

import flash.events.*;

function miFuncion(e:Event):void {
   trace("HOLA");
}

btnEmpezar.addEventListener(MouseEvent.CLICK, miFuncion);

btnEmpezar.enabled = false;


Al ejecutarlo, si pasas el ratón por encima del botón el cursor no sale... BIEN... pero... si haces clic SÍ que se ejecuta la función miFuncion y yo NO quiero que se ejecute por que para eso desactivo el botón...

¿Qué hago mal?

Saludos y gracias.

Por nesta

12 de clabLevel



 

firefox
Citar            
MensajeEscrito el 01 Sep 2011 03:51 pm

Código ActionScript :

btnEmpezar.removeEventListener(MouseEvent.CLICK, miFuncion);

Por Acreonte

Claber

1543 de clabLevel

5 tutoriales
6 articulos

Genero:Masculino  

Digital Scientist

firefox
Citar            
MensajeEscrito el 02 Sep 2011 11:13 pm
Lo que pasa es que como llamas a un listener con el evento MouseEvent.CLICK entonces la funcion a la que llamas tambien tienes que enviarle un evento MouseEvent, quedaria asi:
function miFuncion(e:MouseEvent):void {
trace("HOLA");
}

Por jomahe

0 de clabLevel



 

firefox
Citar            
MensajeEscrito el 02 Sep 2011 11:25 pm
En AS3, con la llegada de los eventos, la propiedad enabled ya no funciona para deshabilitar los clicks. El otro día me dí cuenta de ese detalle :P

Utiliza removeEventListener como te dijo Acreonte, es la mejor opción. Para volver a habilitar el click, vuelves a añadir el listener y punto :)

Por cierto, el puntero del mouse no cambia aunque el movieclip esté habilitado (enabled). En AS3, para que aparezca el puntero, es necesario definir la variable useHandCursor como true ;)

Por nestorrente

1010 de clabLevel

10 tutoriales

 

Vigo

firefox
Citar            
MensajeEscrito el 03 Sep 2011 11:49 am

nestorrente escribió:

Por cierto, el puntero del mouse no cambia aunque el movieclip esté habilitado (enabled). En AS3, para que aparezca el puntero, es necesario definir la variable useHandCursor como true ;)
:shock: :shock:

Mira que me he peleado yo con los botones en lugar de udar MovieClips porque creía que si no era un botón no se podía hacer que cambiara el puntero :cry: :cry: y resulta que era una propiedad :lol: :lol: :lol:

Nota mental: Busca una lista de metodos y propiedades de las clases más importantes de AS3

Por Cagarnera

Claber

158 de clabLevel



 

firefox
Citar            
MensajeEscrito el 03 Sep 2011 02:58 pm
Yo siempre consulto la referencia en la página de Adobe ;)

Por ejemplo, MovieClip.

Por nestorrente

1010 de clabLevel

10 tutoriales

 

Vigo

firefox
Citar            
MensajeEscrito el 05 Sep 2011 09:42 pm
El método mouseEnabled te ayudará ...

Saludos.

Por jeffibacache

1 de clabLevel



Genero:Masculino  

Interactive Developer/Designer

firefox
Citar            
MensajeEscrito el 09 Sep 2011 06:13 am
Gracias a todos.

Por nesta

12 de clabLevel



 

firefox

 

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