Die Aufgabe
Aufgabe 11
Gegeben ist der folgende Code einer JavaFX-Anwendung. Die Package- und Importangaben sind aus Gründen der Übersicht nicht mit abgedruckt.
Ergänzen Sie den Code so, dass beim Drücken des Buttons der im Textfeld eingegebene (oder dort bereits vorhandene) ganze Zahlenwert um 1 erhöht wird. Im Textfeld soll anschließend der um 1 erhöhte Wert angezeigt werden.
Sie können davon ausgehen, dass immer nur ganze Zahlenwerte eingegeben werden. Fehleingaben brauchen daher nicht behandelt zu werden.
public class EinsHoch extends Application { @Override public void start(Stage primaryStage) { VBox root = new VBox(); Button button = new Button("Plus eins"); TextField textFeld = new TextField("1"); root.getChildren().addAll(button, textFeld); Scene scene = new Scene(root, 200, 100); primaryStage.setTitle("Eins Hoch"); primaryStage.setScene(scene); primaryStage.show(); } public static void main(String[] args) { launch(args); }}(Im Original steht zwischen Zeile 7 und dem addAll eine leere Fläche zum Ergänzen.)
Gegeben ist ein fertiges Fenster: oben der Button, darunter ein Textfeld mit der 1. Noch passiert beim Klick nichts. Gesucht sind die Zeilen, die dem Button eine Aktion geben: Zahl aus dem Feld lesen, um 1 erhöhen, wieder anzeigen. Falsche Eingaben müssen nicht behandelt werden.
String). Rechnen kann man nur mit Zahlen (int). Darum gilt immer: Text lesen, in eine Zahl umwandeln, rechnen, die Zahl wieder in Text umwandeln, Text setzen.- Dem Button mit setOnAction eine Aktion geben.
- Den Text lesen und in eine Zahl umwandeln.
- Die Zahl um 1 erhöhen.
- Das Ergebnis als Text ins Feld schreiben.
- Probelauf.
Zu dieser Probeklausur gibt es keine Musterlösung. Die Lösung hier ist selbst erarbeitet, mit JavaFX übersetzt und im Fenster ausprobiert.