N Abnd....
Ich bin ein ziemlicher Java-Neuling.
Ich versuche momentan ein Programm zu programmieren wo eine Grafik vom linken zum rechten Bildschirmrand "wandert". Und man steuert einen Punkt. (Manche kennen das Spiel vllt. unter dem Namen Frogger)
Dazu habe ich in ein JPanel einen Thread implementiert.
Prinzipiell läuft das Programm.
Jedoch jedesmal wenn ich den Punkt mit der Tastatur steuere, dann wird mir eine Fehlermeldung angezeigt;
java.lang.InterruptedException: sleep interrupted
at java.lang.Thread.sleep(Native Method)
Logischerweise muss ich den Thread ja auch irgendwann mal schlafen(sleep)en lassen.
Während ich den Punkt mit der Tastatur steuere, muss ich den Thread aber mittels t.interrupt(); unterbrechen, da ich den Punkt sonst nicht steuern kann.
Das Problem liegt jetzt darin, dass ich den Thread auch unterbreche wenn er schlaft. Was ja eigentlich sinnlos ist.
Meine Frage; kann ich während der Thread schläft, eine Boolean true setzen und während diese Boolean true ist, interrupte ich dann einfach nicht.
Oder hat irgendwer einen anderen besseren Lösungsweg?
Danke für eure Antworten.
mfg Ripei
Ich bin ein ziemlicher Java-Neuling.
Ich versuche momentan ein Programm zu programmieren wo eine Grafik vom linken zum rechten Bildschirmrand "wandert". Und man steuert einen Punkt. (Manche kennen das Spiel vllt. unter dem Namen Frogger)
Dazu habe ich in ein JPanel einen Thread implementiert.
Prinzipiell läuft das Programm.
Jedoch jedesmal wenn ich den Punkt mit der Tastatur steuere, dann wird mir eine Fehlermeldung angezeigt;
java.lang.InterruptedException: sleep interrupted
at java.lang.Thread.sleep(Native Method)
Logischerweise muss ich den Thread ja auch irgendwann mal schlafen(sleep)en lassen.
Während ich den Punkt mit der Tastatur steuere, muss ich den Thread aber mittels t.interrupt(); unterbrechen, da ich den Punkt sonst nicht steuern kann.
Das Problem liegt jetzt darin, dass ich den Thread auch unterbreche wenn er schlaft. Was ja eigentlich sinnlos ist.
Meine Frage; kann ich während der Thread schläft, eine Boolean true setzen und während diese Boolean true ist, interrupte ich dann einfach nicht.
Oder hat irgendwer einen anderen besseren Lösungsweg?
Danke für eure Antworten.
mfg Ripei