Heute bin ich auf ein Problem gestoßen, vielleicht könntest du mir erklären, warum es so geschrieben werden muss.JavaFx: Szenen wechseln (Elternausgabe)
Parent parent = FXMLLoader.load(getClass().getResource("/fxmlFiles/MainScreen.fxml"));
Scene MainScene = new Scene(parent);
Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
stage.setScene(MainScene);
stage.show();
Ich möchte Sie über die 3. Zeile dieses Codes (Szenenwechsel) fragen. Warum wird zuerst Stage
und dann Node
ausgegeben?
Warum können wir nicht es einfach wie folgt schreiben:
Parent parent = FXMLLoader.load(getClass().getResource("/fxmlFiles/MainScreen.fxml"));
Scene MainScene = new Scene(parent);
Stage stage = new Stage(scene);
stage.setScene(MainScene);
stage.show();
Parent
ist nur irgendwie ein Layout von FXML Dateien zur Verfügung gestellt, nicht wahr? Wenn nicht mir bitte erklären, was es ist exacly: P
Ich würde sehen müssen, wenn dieses Ereignis aufgerufen wird, aber das ist eine ziemlich übermäßig komplexe Möglichkeit, eine Szene zu wechseln. Wenn Sie die gleiche Bühne halten, müssen Sie nur die Szene auf der Bühne wechseln. Wenn Sie eine neue Bühne möchten, dann gehen Sie mit der zweiten Methode, die Sie gezeigt haben. – Dominic