我想用JavaFX构建一个简单的应用程序。问题是,当我第一次打开一个窗口(模态)进展顺利。第二次,它给我这个例外:java.lang.IllegalArgumentException:AnchorPane [id = klantroot,styleClass = root]已经设置为另一个场景的根目录
java.lang.IllegalArgumentException异常:AnchorPane [ID = klantroot, 的styleClass =根]已被设为另一个场景
的根既然我相当新的这个我真的不知道如何解决这个问题。有人可以提供一些帮助吗。提前致谢。
在我maincontroller我有这样的代码:
private void showModal(Parent view, String title) {
Stage stage = new Stage();
Scene scene = new Scene(view);
stage.setScene(scene);
stage.initModality(Modality.WINDOW_MODAL);
stage.initOwner(this.root.getScene().getWindow());
stage.setTitle(title);
stage.showAndWait();
}
@FXML
private void handleToevoegenKlant() {
klantPresenter.setKlant(-1);
showModal(klantPresenter.getView(), "Toevoegen klant");
}
在我klantPresenter我有:
<AnchorPane
fx:id="klantroot"
fx:controller="presenter.KlantPresenter"
prefHeight="274.0" prefWidth="483.0" xmlns="http://javafx.com/javafx/8" xmlns:fx="http://javafx.com/fxml/1">
这是完美的工作。非常感谢! – 2014-10-03 11:29:52
我有类似的问题,但我得到scene'e根不能为空,当我尝试设置根。 – 2016-08-24 13:19:37