Timer

Albi_2020

Mitglied
Hallo,

ich habe ein Memoryspiel in javaFX. Dabei soll ein Timer das Umdrehen der Karten durch den Computer steuern. Das funktioniert. Am Ende soll ausgegeben werden, wer das Spiel gewonnen hat. Das funktioniert auch. Damit die Ausgabe gelesen werden kann und das Spiel nicht direkt beendet wird, soll auch hier ein Timer aushelfen. Auch das funktioniert.
Nun zu meiner Frage:
Ich habe zwei innere Klassen für die Timer erstellt, in denen jeweils eine andere Methode aufgerufen wird. Kann ich auch beides in einen Eventhandler schreiben (und wenn ja wie) oder muss immer ein eigener Eventhandler erstellt werden?

Java:
class TimerHandler implements EventHandler<ActionEvent> {
        @Override
            public void handle(ActionEvent arg0) {
            
                karteSchliessen();
        }
    }
    
    class TimeHandler implements EventHandler<ActionEvent> {

        @Override
        public void handle(ActionEvent arg0) {
            
            Platform.exit();
            
        }

Danke für etwaige Hilfe.
 
Diese Klassen brauchst Du so nicht. Es geht ja nur um Aufrufe, und da kannst Du mit Lambda Expressions arbeiten. Also da wo Du eine Instanz von TimeHandler erzeugst oder nutzt dann einfach direkt schreiben () -> karteSchliessen() bzw. () -> Platform.exit().

Wenn Du Methoden schreibst, die ein ActionEvent als Argument haben, dann kannst Du auch Methodenreferenzen nutzen.
 

Zurück
Oben