====== Steuerung von Grafikobjekten per Tastatur ====== Stell' Dir die Steuerung eines Mario-artiges Jump'n Run-Spieles vor: solange der Spieler die "Pfeil-nach-rechts"-Taste gedrückt hält, soll sich die Spielfigur nach rechts bewegen. Sobald der Spieler die Taste loslässt, sollt die Spielfigur stehenbleiben. Wie lässt sich das programmtechnisch umsetzen? \\ \\ Wir könnten die Methoden ''onKeyDown'' und ''onKeyUp'' aus dem Kapitel über die Tastatur- und Mausereignisse nutzen. Da sie beim gerade geschilderten Ablauf nur jeweils einmal aufgerufen werden, die Spielfigur sich zwischen den beiden Methodenaufrufen aber weiter bewegen soll, müssten wir den Zustand "Pfeil-nach-rechts-Taste ist gerade unten" dazwischen speichern und regelmäßig (z.B. in der ''act''-Methode) auswerten, um die Spielfigur weiter voranzubewegen. \\ \\ Genau dabei unterstützt uns unser API: Jedes Grafikobjekt (genauer: jede von Actor abgeleitete Klasse) hat zwei Methoden ''isKeyUp(String key)'' und ''isKeyDown(String key)'', mit denen sich jederzeit für jede Taste der Tastatur ermitteln lässt, ob sie gerade nach unten gedrückt ist. Diese Methoden nutzen wir, um den Zustand unserer Grafikobjekte in der ''act''-Methode regelmäßig zu verändern und sie so beispielsweise abhängig von den gedrückten Tasten zu bewegen.
===== Beispiel 1: Pfeiltasten steuern Ball =====