Moin moin allerseits,
Ich habe folgendes Problem:
Zu Übungszwecken programmiere ich ein kleines Memory Spiel.
Ich will den Text des Buttons verändern z.B. auf "1". Dann soll das Programm per Thread.sleep() ein paar Sekunden warten und den Text des Buttons wieder auf den Ausgangswert setzten.
Dieses Vorgehen hab ich in einer Methode showCard untergebracht, die von den ActionListener des Buttons aufgerufen wird. Die ActionListener werden nach MVC in einer Controller Klasse hinzugefügt.
Angenommen der Text ist vorher leer:
Dann bleibt nach Aufruf der Methode der Text des Buttons leer, das Programm wartet die angebene Zeit und der Text wird auf "O" gestzt.
Es wird alse der erste Schritt, den Buttontext auf "X" zu setzten, übersprungen.
Meine Frage ist jetzt in aller erster Linie warum? Habt ihr eine Lösung für das Problem?
Ich habe folgendes Problem:
Zu Übungszwecken programmiere ich ein kleines Memory Spiel.
Ich will den Text des Buttons verändern z.B. auf "1". Dann soll das Programm per Thread.sleep() ein paar Sekunden warten und den Text des Buttons wieder auf den Ausgangswert setzten.
Dieses Vorgehen hab ich in einer Methode showCard untergebracht, die von den ActionListener des Buttons aufgerufen wird. Die ActionListener werden nach MVC in einer Controller Klasse hinzugefügt.
Code:
public void showButton2(int index)
{
buttons[index].setText("X");
try
{
Thread.sleep(2000);
}
catch (Exception e)
{
}
buttons[index].setText("O");
}
Angenommen der Text ist vorher leer:
Dann bleibt nach Aufruf der Methode der Text des Buttons leer, das Programm wartet die angebene Zeit und der Text wird auf "O" gestzt.
Es wird alse der erste Schritt, den Buttontext auf "X" zu setzten, übersprungen.
Meine Frage ist jetzt in aller erster Linie warum? Habt ihr eine Lösung für das Problem?