Bueno, por fin he terminado mi juego de tetris.
En la versión que tengo actualmente nada más abrir el programa se pone a jugar, con las fichas ya bajando... y eso es porque este es mi void main:
Código:
public static void main(String[] args){
new base();
juego juego1=new juego();
juego1.yajuego();
}
en mi clase base tengo todos los elementos del tetris, paneles, marcadores, etc.
Y la clase juego es la clase que tiene toda la logística y los métodos que hacen funcionar el tetris.
Ahora he añadido en la clase base un menú, y le he añadido el actionlistener a dicho menú.
Y este es mi action Listener:
Código:
public void actionPerformed(ActionEvent arg0) {
System.out.println("Menú seleccionado: \""+arg0.getActionCommand()+"\"");
}
Así pues, el menú lo único que hace cuando le doy al menú "Jugar" es decirme en la consola: Menú seleccionado: "Jugar"
Ahora bien, y he aquí el problema que estoy teniendo.
Si muevo las líneas:
Código:
juego juego1=new juego();
juego1.yajuego();
desde el void main a dentro del ActionListener de la siguiente manera:
Código:
public void actionPerformed(ActionEvent arg0) {
if (arg0.getActionCommand()=="Salir")System.out.println("Saliendo");System.exit(0);
if (arg0.getActionCommand()=="Jugar"){
juego juego1=new juego();
juego1.yajuego();
}
}
Entonces al iniciar el juego no hace nada, y al ir al menú y seleccionar el menú jugar se me queda colgado.
Sin embargo, el otro menú "Salir" si me lo hace bien. Me escribe en la consola "Saliendo" y luego sale del programa. Por esto último creo que no es un problema del actionListener y no se me ocurre donde pueda estar el problema.