Button
Ein Button (dt. Schaltfläche) ist ein UI-Control, das in der Regel mit der Maus durch "anklicken" bedient wird (eine Bedienung mit der Tastatur ist ebenfalls möglich). In der Regel wird durch das "anklicken" eine Aktion im Programm ausgelöst.
Das nachfolgende Beispiel zeigt ein Fenster mit einen einfachen Button, wobei noch keine Aktionen hinterlegt sind.
Das obige Beispiel kann durch folgendes Programm erzeugt werden.
import javafx.application.*; import javafx.scene.*; import javafx.scene.control.*; import javafx.scene.paint.*; import javafx.stage.*; public class ButtonDemo extends Application { public static void main(String[] args) { launch(args); } public void start(Stage stage) throws Exception{ Group root = new Group(); Scene scene = new Scene(root, 200, 100, Color.WHITE); Button button = new Button("JavaFX - Button"); button.setLayoutX(45); button.setLayoutY(40); root.getChildren().add(button); stage.setScene(scene); stage.setTitle("ButtonDemo"); stage.show(); } }
Um auf die Betätigung eines Button
zu reagieren steht uns die
Methode setOnAction(EventHandler<ActionEvent> value)
zur Verfügung.
Dieser Methode wird häufig eine annonyme, innere Klasse übergeben, um auf
die Betätigung des Button
zu reagieren.
Im nachfolgenden Beispiel erweitern wir das Einstiegsbeispiel so, dass bei der
Betätigung des Button
"And action" auf der Systemausgabe
ausgegeben wird.
import javafx.application.*; import javafx.event.*; import javafx.scene.*; import javafx.scene.control.*; import javafx.scene.paint.*; import javafx.stage.*; public class AndAction1 extends Application { public static void main(String[] args) { launch(args); } public void start(Stage stage) throws Exception{ Group root = new Group(); Scene scene = new Scene(root, 200, 100, Color.WHITE); Button button = new Button("JavaFX - Button"); button.setLayoutX(45); button.setLayoutY(40); button.setOnAction(new EventHandler<ActionEvent>() { public void handle(ActionEvent event) { System.out.println("And action"); } }); root.getChildren().add(button); stage.setScene(scene); stage.setTitle("ButtonDemo"); stage.show(); } }