1 pièce(s) jointe(s)
Inserer scene dans une autre scene
Bonjour
Je travail sur une application JavaFx qui comporte un menu en haut de l'application (Fichier->Ouvrir, Fichier->Fermer, Gestion Article ->Gérer, etc)
J'ai donc mon application a l'ouverture qui ouvre une premier théâtre avec une scène a l’intérieur qui est le menu:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
| /**
* Initializes the root layout and tries to load the last opened
* person file.
*/
public void initRootLayout() {
try {
// Load root layout from fxml file.
FXMLLoader loader = new FXMLLoader();
loader.setLocation(MenuApp.class
.getResource("view/RootLayout.fxml"));
rootLayout = (BorderPane) loader.load();
// Show the scene containing the root layout.
Scene scene = new Scene(rootLayout);
primaryStage.setScene(scene);
// Give the controller access to the main app.
RootLayoutController controller = loader.getController();
controller.setMenuApp(this);
primaryStage.show();
} catch (IOException e) {
e.printStackTrace();
}
} |
A cette étape j'ai bien mon application qui ouvre une fenêtre avec mon menu
Pièce jointe 321136
Par contre maintenant au clique d'un sous menu des menus je voudrai que cette nouvelle scène s'introduit dans la première afin de pouvoir avoir mon menu a chaque fois
Pour le moment quand je clique sur un sous menu j'ai une nouvelle fenêtre qui s'ouvre a nouveau car j'ai recréer un théâtre et une nouvelle scène mais ce n'est pas mon objectif
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
| public void gestionArticleOverview() {
try
{
// Load the fxml file and create a new stage for the popup dialog.
FXMLLoader loader = new FXMLLoader();
loader.setLocation(MenuApp.class.getResource("view/baseredwireV10Ex.fxml"));
AnchorPane page = (AnchorPane) loader.load();
// Create the dialog Stage.
Stage dialogStage = new Stage();
dialogStage.setTitle("Catalogue");
dialogStage.initModality(Modality.WINDOW_MODAL);
dialogStage.initOwner(primaryStage);
Scene scene = new Scene(page);
dialogStage.setScene(scene);
// Set the person into the controller.
CatalogueController controller = loader.getController();
controller.setDialogStage(dialogStage);
//controller.setArticle(article);
// Show the dialog and wait until the user closes it
dialogStage.showAndWait();
}
catch (IOException e)
{
e.printStackTrace();
} |
Je tien a préciser que mon action est fonctionnelle pour ouvrir "gestionArticleOverview", je veux juste que la fenêtre s'ouvre dans une fenêtre parent
En vous remerciant par avance de m'éclairer