Java: JavaFX: Unterschied zwischen den Versionen

Aus Flinkwiki
Wechseln zu: Navigation, Suche
(In IntelliJ Idea)
(In IntelliJ Idea)
Zeile 26: Zeile 26:
 
<!--''File -> Project Structure > Modules > Dependencies'' > (ganz rechts Plus-Zeichen klicken) > ''Jars or Directories''-->
 
<!--''File -> Project Structure > Modules > Dependencies'' > (ganz rechts Plus-Zeichen klicken) > ''Jars or Directories''-->
  
> Hier den ''lib'' Ordner des entpackten JavaFX einbinden.
+
> Hier den ''lib''-Ordner des entpackten JavaFX einbinden.
  
 
2. In ''Run > Edit Configurations'' VM Options eintragen:
 
2. In ''Run > Edit Configurations'' VM Options eintragen:

Version vom 20. Februar 2021, 15:23 Uhr

Seitenübersicht
Zur Seite "Java"
Zur Seite "Java: Swing"
Zur Seite "IntelliJ IDEA"
Zur Seite "Eclipse"
Zur Seite "Netbeans"
Zur Seite "Java: Beispiele"
Zur Seite "Kotlin"


Allgemeines


Installation

Download von https://gluonhq.com/products/javafx/

zip-Paket entpacken, Laufwerk oder Ordner beliebig


In IntelliJ Idea

1. File -> Project Structure > Libraries > (Plus-Zeichen klicken)

> Hier den lib-Ordner des entpackten JavaFX einbinden.

2. In Run > Edit Configurations VM Options eintragen:

Linux/MAC:

--module-path /path/to/javafx-sdk-15.0.1/lib --add-modules javafx.controls,javafx.fxml

(Padangabe anpassen)

Windows:

--module-path "\path\to\javafx-sdk-15.0.1\lib" --add-modules javafx.controls,javafx.fxml

(Pfadangabe anpassen)


Troubeshooting

Error: JavaFX runtime components are missing, and are required to run this application

> Prüfen, ob in Run > Run Configuration > VM Options

der Pfad zum lib-Verzeichnis von JavaFX richtig gesetzt ist (ggf. das Eingabefeld vorher mit Modify options öffnen).[1]

 module javafx.base not found

> Pfad in VM Options' enthält keinen Verweis auf javafx.base


Scene Builder

Beim ersten Aufruf der fxml-Datei Download ausführen.


Grundstruktur

Imports

import javafx.application.Application;
import javafx.application.Platform;
import javafx.event.Event;
import javafx.scene.Scene;
import javafx.scene.control.Button;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;

Beispiel

public class ErstesBeispiel extends Application {
@Override
public void init() {
System.out.println("init");
}
@Override
public void start(Stage stage) {
System.out.println("start");
StackPane pane = new StackPane();
Button button = new Button();
button.setText("Hier klicken");
button.setOnAction(e -> Platform.exit());
pane.getChildren().add(button);
stage.setScene(new Scene(pane, 400, 100));
stage.setOnCloseRequest(Event::consume);
stage.setTitle("Erstes Beispiel");
stage.setResizable(false);
stage.show();
}
456 28 Einführung in JavaFX
@Override
public void stop() {
System.out.println("stop");
}
public static void main(String[] args) {
launch(args);
}
}

Abts, Dietmar: Grundkurs Java, 11. Auflage 2020


Aufbau

Eine JavaFX-Applikation durchläuft drei Methoden: init – start – stop. init muss implementiert werden.

Stage stellt den Rahmen für die Applikation dar.

Scene ist der Container für die Inhalte.

Ein Pane ist ein Brett, auf dem Elemente angeordnet werden können.[2]


Links und Quellen


| |