Jbutton trabaja aunque lo tengo desabilitado!!

Sheila
11 de Noviembre del 2005
Hi tengo un boton inmortal : )..
Pensaba que cambiando la propiedad enable =false de un Jbutton podía evitar que al pulsar sobre el se ejecute el código que programe para su evento mouseClicked, pero no es asi!! aunque este desabilitado cuando pulso sobre el boton desabilitado el código se ejecuta!!!
Algun consejo Gracias ..

Rigel
11 de Noviembre del 2005
HOLA:

En realidad el problema es por el tipo de evento que le asignas al botón. el mouseClicked() no va a distinguir entre un botón habilitado o no, sino que va a escuchar al click del mouse, entonces te recomiendo que utilices:

miBoton.addActionListener(miEvento);

//.....
//.....

ActionListener miEvento= new ActionListener(){
public void actionPerformed(ActionEvent evt){

//tu código a implementado para el boton
}
};


Con esto al estar habilitado el botón y darle click va a hacer lo que esté dentro del ActionLIstener y si está deshabilitado el botón entonces no se ejecutará tu código dentro del Listener. Te recomiendo que utilices esta forma para los eventos de los botones.

Esto porque te aseguro que con el mouseClicked() en ocaciones no te hace mucho caso al presionar el botón y tienes que darle click 2 o 3 veces para que te haga caso,, o no??

Ahora que si tienes muchos botones o eventos de botones, entonces puedes crear una clase a parte de listeners como una clase interna e incluso puedes capturar el evento de cada botón y así asignar un solo listener para todos los botones, solo que hay que poner varios if.

Saludos y Suerte


masv0104
11 de Noviembre del 2005
MEJOR POR QUE NO DESABILITAS EL BUTTON Y ASI TE EVITAS DE PROBLEMAS CON.
btnAceptar.setEnabled(false);

ESPERO Y TE HAYA FUNCIONADO ESTO LINDA .....

andres
11 de Noviembre del 2005
mas facil.. hazlo invisible por el momento que deberia estar deshabilitado....setVisible(false);