javafx.application
definiert istimport javafx.application.*; import javafx.scene.Scene; import javafx.scene.control.Label; import javafx.scene.control.Button; import javafx.scene.layout.*; import javafx.stage.Stage; public class HelloFX extends Application { @Override public void start(Stage stage) { // Button Button btn = new Button(); btn.setText("Hallo Welt!"); btn.setOnAction( (event) -> Platform.exit() ); // Stackpane "root" Pane root = new StackPane(); // Knopf anfügen root.getChildren().add(btn); stage.setScene(new Scene(root, 300,150) ); stage.show(); } public static void main(String[] args) { launch(); } }
Compilieren auf der Kommandozeile mit dem Befehl
javac --module-path /usr/share/openjfx/lib/ --add-modules javafx.controls HelloFX.java
Ausführen mit dem Befehl
java --module-path /usr/share/openjfx/lib/ --add-modules javafx.controls HelloFX
Da steckt jetzt einiges drin.
HelloFX
bedient sich der Vererbung, es handelt sich um eine aus der Klasse Application
abgeleiteten Klasse1) die alle Methoden dieser abstrakten Application Klasse erbt.launch
und start
. launch
wird in der main-Methode unseres Programms aufgerufen, damit wird gewissermaßen der JavaFX Steuerprozess aufgerufen, der im Folgenden dann die Methode start
aufruft, die wir aber mit eigenem Code überschrieben haben, so dass die von uns gewünschte GUI entsteht. javafx.application
definiert ist