Estoy creando un juego muy similar al "AlphaBetty Saga" en Facebok, en JAVA (NetBeans) y necesito que al arrastrar el mouse sobre los botones se seleccionen (Cambiando de Color) y se comparen con un fichero que ya tengo, para hacer algo similar a una sopa de letras; y si la palabra se encuentra dentro del fichero elimine las letras generando unas nuevas completamente aleatorias, alguna solución?
He intendado con un mouseDragged pero no los selecciona, no se me occure qué puedo hacer, apreciaría su colaboración.
Clase que crea la matriz tras pulsar botón "Jugar"
Código:
public void actionPerformed(ActionEvent evt) {
//Eliminamos todo
panel.removeAll();
//Se crea una matriz de botones segun las filas y columnas entrantes
Boton[][] botones = new Boton[10][10];
//se crea el listado de letras a usar
String Letra = "AAABCCDEEEFGHIIIJKLLMNOOOPQRSSTUUUVWXYZ";
//Se recorren las filas
for (int fila = 0; fila < 8; fila++) {
//Estando en la fila se recorrer las columnas
for (int columna = 0; columna < 8; columna++) {
//Se crea el boton y se agrega a las celda de la matriz
botones[fila][columna] = new Boton(59 * columna, 59 * fila, 47, 47);
//Se le asigna una letra
botones[fila][columna].setText("" + Letra.charAt(Math.abs(r.nextInt() % Letra.length())));
botones[fila][columna].setFont(new Font("Arial", Font.BOLD, 20));
//Se agrega el boton al panel
panel.add(botones[fila][columna]);
}
}
//Se actualiza el panel para que se vean los botones
panel.updateUI();
}
Clase donde se supone crearía la función indicada:
Código:
public class Boton extends JButton implements MouseMotionListener {
// Constructor con parametros para posicionar a los botones
public Boton(int pos_x, int pos_y, int ancho, int alto) {
//Se coloca el boton en un lugar y se le da un tamanio
setBounds(pos_x, pos_y, ancho, alto);
//Se agrega el action listener en este caso la misma clase
addMouseMotionListener(this);
}
public void mouseDragged(MouseEvent me) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
public void mouseMoved(MouseEvent me) {
throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates.
}
}