Verwendung mehrerer Scenes in JavaFX
- Home
- Tutorials
- Java
- Der Ultimative JavaFX 8 GUI Kurs - Dein Weg zu tollen GUIs
- Verwendung mehrerer Scenes in JavaFX
Dieses Video ist nicht verfügbar
Dieses Video steht nur eingeschriebenen Nutzern zur Verfügung.
Jetzt Kurs kaufen
Hier lernst du wie das mit der Verwendung mehrere Scenes in JavaFX funktioniert. Bisher haben wir ja immer nur mit einer Scene gearbeitet, jetzt wird es Zeit zu lernen wie das mit mehreren Funktioniert.
Dazu müssen wir einige Variablen global anlegen:
Beispiel für Verwendung mehrerer Scenes in JavaFX
Stage fenster;
Scene scene1, scene2;
Button button1, button2;
Label label1,label2;
Denn wir möchten diese nicht nur lokal in der start Funktion verwenden.
Unsere start und main Funktion sehen so aus:
@Override
public void start(Stage primaryStage) {
try {
// wir weisen unserem Fenster die Stage zu
fenster = primaryStage;
// initialisieren der einzelnen Elemente
label1 = new Label("Das ist die erste Szene!");
button1 = new Button("Zur zweiten Szene wechseln");
// Ohne dieser Zeile macht der Button nichts
button1.setOnAction(this);
// verwendung einer VBox als unser Layout
//(ähnlich wie Stackpane)
// in den klammern weißt man die Abstände zu
VBox layout1 = new VBox(30);
// wir weisen unserem layout die gewünschten Elemente zu
layout1.getChildren().addAll(label1,button1);
scene1 = new Scene(layout1, 250, 250);
label2 = new Label("Das ist die zweite Szene!");
button2 = new Button("Zur ersten Szene wechseln");
button2.setOnAction(this);
VBox layout2 = new VBox(10);
layout2.getChildren().addAll(label2,button2);
scene2 = new Scene(layout2, 350, 350);
primaryStage.setScene(scene1);
primaryStage.show();
} catch(Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
launch(args);
}
Damit haben wir unsere Benutzeroberfläche soweit vorbereitet. Nun wird es noch Zeit dafür zu sorgen, dass unsere Buttons auch etwas tun. Dazu verwenden wir die selbe Methode die wir bereits kennengelernt haben
// wenn button1 geklickt wird, wechseln wir zu Scene2
// wenn button2 geklickt wird, wechseln wir zu Scene1
@Override
public void handle(ActionEvent event) {
if(event.getSource() == button1){
fenster.setScene(scene2);
fenster.show();
}
if(event.getSource() == button2){
fenster.setScene(scene1);
fenster.show();
}
}
Damit wechseln wir in unserem Programm nun zwischen den beiden Scenes hin und her. Die Herangehensweise funktioniert einwandfrei, das verwalten der Buttonklicks ist jedoch ziemlich aufwendig. Geht das nicht besser?! Fragst du dich vielleicht. JA es geht besser. Wie, lernst du im nächsten Artikel.
Der Ultimative JavaFX 8 GUI Kurs - Dein Weg zu tollen GUIs
-
Hier starten
-
Lektion1.1
-
Lektion1.2
-
-
Grundlagen
-
Lektion2.1
-
Lektion2.2
-
Lektion2.3
-
Lektion2.4
-
Lektion2.5
-
Lektion2.6
-
Lektion2.7
-
-
Vollgas zur eigenen Benutzeroberfläche mit UI Controls
-
Lektion3.1
-
Lektion3.2
-
Lektion3.3
-
Lektion3.4
-
Lektion3.5
-
Lektion3.6
-
Lektion3.7
-
Lektion3.8
-
Lektion3.9
-
Lektion3.10
-
Lektion3.11
-
Lektion3.12
-
Lektion3.13
-
Lektion3.14
-
Lektion3.15
-
Lektion3.16
-
Lektion3.17
-
Lektion3.18
-
Lektion3.19
-
Lektion3.20
-
-
Layouts
-
Lektion4.1
-
Lektion4.2
-
Lektion4.3
-
Lektion4.4
-
Lektion4.5
-
Lektion4.6
-
Lektion4.7
-
-
Shapes
-
Lektion5.1
-
Lektion5.2
-
Lektion5.3
-
Lektion5.4
-
Lektion5.5
-
Lektion5.6
-
Lektion5.7
-
-
Charts
-
Lektion6.1
-
Lektion6.2
-
Lektion6.3
-
Lektion6.4
-
Lektion6.5Scatter Chart in JavaFX
-
-
Events
-
Lektion7.1
-
Lektion7.2
-
Lektion7.3
-
Lektion7.4
-
-
Audio und Video
-
Lektion8.1
-
Lektion8.2
-
Lektion8.3
-
-
SceneBuilder
-
Lektion9.1
-
Lektion9.2
-
Lektion9.3
-
Beliebte Kurse
Spring Boot Webentwicklung - RESTful APIs entwickeln!
Lerne Spring Boot und erstelle RESTful APIs Das beliebteste Java...
29,99€
Die Java 11 Masterclass - Werde zum Profi-Entwickler!
Werde zum Entwickler mit der Java 11 Masterclass! Starte in...
29,99€
Spiele entwickeln mit Unity 3D – Erstelle eigene Games in C# - Starter
Willkommen zum kostenlosen Teil des Kurses: "Spiele entwickeln mit Unity...
Kostenlos