0
我有問題,我的應用程序不斷變化的場景看起來像的JavaFX拋出:IllegalArgumentException(已被設爲另一個場景根)
Main screen > Login screen
我存儲在主文件屏幕爲hashmap<String, Node>
,一切都很好,直到我去從登陸界面到主屏幕回來,想再次加載登錄界面,這裏是例外,代碼:
java.lang.IllegalArgumentException: [email protected][styleClass=root]is already set as root of another scene
public static final HashMap<String, Parent> pages = new HashMap<>();
@FXML
private void LogIn(ActionEvent event) {
Button button = (Button) event.getSource();
Stage stage = (Stage) button.getScene().getWindow();
if(stage.getScene() != null) {stage.setScene(null);}
Parent root = MyApplication.pages.get("LoginPage");
Scene scene = new Scene(root, button.getScene().getWidth(), button.getScene().getHeight());
stage.setScene(scene);
}
它,當我創建工程新anchorpane
Parent root = new AnchorPane(MyApplication.pages.get("LoginPage"));
但我想知道爲什麼它給了我一個異常,如果我正在同臺
真的感謝這就是解決我的問題 –
@JasonBourne,你應該紀念這個問題的正確答案。 – Kerry