From 2dd4182799cd53dc3b034f7fee86c0994084f548 Mon Sep 17 00:00:00 2001 From: Fan-Wu Yang Date: Wed, 5 Apr 2017 13:16:52 +1200 Subject: [PATCH] Fixed scene resizing when a new page happens to load. --- src/main/java/controllers/Main.java | 20 +++++++++--- src/main/resources/scenes/addride.fxml | 42 ++++++++++++------------- target/classes/controllers/Main.class | Bin 2848 -> 3031 bytes target/classes/scenes/addride.fxml | 42 ++++++++++++------------- 4 files changed, 57 insertions(+), 47 deletions(-) diff --git a/src/main/java/controllers/Main.java b/src/main/java/controllers/Main.java index a9bb73f..9e77951 100644 --- a/src/main/java/controllers/Main.java +++ b/src/main/java/controllers/Main.java @@ -19,9 +19,10 @@ import java.io.InputStream; public class Main extends Application { private Stage primaryStage; - private Scene base; + private Parent base; private BaseController baseController; private Session session; + private Scene scene = null; public void start(Stage stage) throws Exception { this.primaryStage = stage; @@ -30,7 +31,7 @@ public class Main extends Application { //load up base pane FXMLLoader loader = new FXMLLoader(getClass().getClassLoader().getResource("scenes/base.fxml")); Parent root = loader.load(); - base = new Scene(root, SceneCode.prefWidth, SceneCode.prefHeight); + base = root; baseController = (BaseController) loader.getController(); baseController.setParent(this); @@ -38,6 +39,8 @@ public class Main extends Application { //set up stage stage.setTitle("UC RSS"); + stage.setMinHeight(400); + stage.setMinWidth(600); stage.show(); } @@ -57,12 +60,19 @@ public class Main extends Application { } finally { in.close(); } - Scene scene = null; if (fxml.isLoadMenu()){ - scene = base; + if (scene == null){ + scene = new Scene(base, SceneCode.prefWidth, SceneCode.prefHeight); + }else{ + scene.setRoot(base); + } baseController.setContent(page); }else { - scene = new Scene(page, SceneCode.prefWidth, SceneCode.prefHeight); + if (scene == null) { + scene = new Scene(page, SceneCode.prefWidth, SceneCode.prefHeight); + }else{ + scene.setRoot(page); + } } primaryStage.setScene(scene); Controller controller = loader.getController(); diff --git a/src/main/resources/scenes/addride.fxml b/src/main/resources/scenes/addride.fxml index b8a6917..12ecb10 100644 --- a/src/main/resources/scenes/addride.fxml +++ b/src/main/resources/scenes/addride.fxml @@ -5,7 +5,6 @@ - @@ -16,32 +15,33 @@ - - - - - - - - + + + + + + + + + -