Java - evento click en botones

 
Vista:

evento click en botones

Publicado por tito (2 intervenciones) el 13/12/2006 08:58:44
Hola a todos, quisiera plantearos una question que seguramente es facil de responder pero que no encuentro la forma de hacerla. El tema esque tengo 5 botones (jButton1 .. jButton5) y estan inicializados con un color de fondo predeterminador (creo que es el color de los controles que es en RGB (236,233,216) o algo asi. Quiero que al presionar cada uno de ellos su color de fondo sea el rojo y cuando se vuelva a presionar que el color de fondo vuelva a ser el RGB que he puesto antes. Mas o menos el metodo y la sentencia if la tengo clara, he pensado algo asi:

public void cambiarColorFondo(jButton miboton) {
if (miboton.getbackground()==Color.RGB(236,233,216)) {
miboton.setBackGround(Color.Red);
} else {
miboton.setBackGround(Color.RGB(236,233,216));
}
}

Pero lo que me cuesta hacer es pasarle el boton al metodo cuando se ejecuta el evento.

He pensado añadir al evento mouseClicked (no se si es asi exactamente) de cada boton el metodo cambiarColorFondo pero no se como pasarle cual es el boton que se presiona.

El evento que se me crea tiene la siguiente cabecera:

public void mouseClicked (MouseEvent e) {} pero no se como hacer que ese evento recoja cual es el boton presionado y se le pase dicho boton al metodo cambiarColorFondo.

seria una cosa asi:
public void mouseClicked(MouseEvent e) {
Jbutton botonprueba=(boton que he presionado);
cambiarColorFondo(botonprueba);
}

Creo que tal vez con e.algo podria sacarlo pero exactamente no se como, a ver si alguien puede ayudarme.
Muchas gracias de antemano.

PD: En la definicion de la clase tengo puesto el implements MouseListener y he imporatado java.awt.event.*
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:evento click en botones

Publicado por tito (2 intervenciones) el 13/12/2006 09:18:14
Bueno por lo que he podido mirar por ahi me he dado cuenta de que es mejor utilizar el evento ActionListener para hacer click sobre el boton, pero de la misma forma me gustaria saber como poder implementarlo para saber que boton he presionado y pasarselo al metodo cambiarColorFondo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:evento click en botones

Publicado por chuidiang (950 intervenciones) el 13/12/2006 19:15:50
Hola:

El evento ActionEvent tiene dentro el boton que lo ha provocado

evento.getSource() te devuelve el boton que ha provocado el evento.

Se bueno.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar