Ver Mensaje Individual
  #4 (permalink)  
Antiguo 26/05/2009, 15:45
Squar
 
Fecha de Ingreso: abril-2009
Mensajes: 82
Antigüedad: 15 años
Puntos: 2
Respuesta: -ayuda-problema con matriz de botones

Si claro...

Para cada botón tendrás que tener asignado un listener concreto, ¿no es así? Si lo que deseas es diferenciar cada elemento sin necesidad de hacer cambios extraños, para cada boton tienes que crear una instancia de ese listener y pasarle en el constructor la posición de la fila y la columna del botón al que hace referencia. Por ejemplo:

Matriz de botones
Código:
JButton[][] buttons = new JButton[2][2];

// Creas los botones
buttons[0][0] = new JButton("Boton 0.0");
buttons[1][0] = new JButton("Boton 1.0");
buttons[0][1] = new JButton("Boton 0.1");
buttons[1][1] = new JButton("Boton 1.1");

// Asignas a cada boton una instancia de cada escuchador
buttons[0][0].setListener( new MyListener(0, 0) );
buttons[1][0].setListener( new MyListener(1, 0) );
buttons[0][1].setListener( new MyListener(0, 1) );
buttons[1][1].setListener( new MyListener(1, 1) );
Clase del escuchador
Código:
private int fila;
private int columna;

public MyListener(int fila, int columna) {
     this.fila = fila;
     this.columna = columna;
}
Así, como cada botón tiene un escuchador único diferenciado porque el escuchador lleva incluido en el código la columna y la fila del botón al que pertenece, ya solo tendrías que hacer uso de dichos atributos.

Espero haberme explicado mejor ahora.

Un saludo.