以前的fxml文件视图保留在新视图的背景中

时间:2019-02-01 07:37:26

标签: java javafx fxml scene

我正在做登录应用程序,但是页面加载有问题。这是它的照片: Login Page

但是当我单击“登录”按钮时,它会加载:

Wrong Profile Page

我希望此页面可以加载:Profile Page

所有页面的父节点是AnchorPane。当我单击“注册”链接时,我没有这个问题。

单击“记录”按钮时,会拍摄以下功能:

public void loginButtonClicked(ActionEvent actionEvent) {
    if(usernameInput.getText().equals("1") && passwordInput.getText().equals("1")) {
        application.gotoProfile();
    } else {
        errorMessage.setText("Username/Password is incorrect");
    }
}
public void gotoProfile() {
    try {
        ProfileController profile = (ProfileController) replaceWindowView("template/profile.fxml");
        profile.setApplication(this);
    } catch (IOException e) {
        e.printStackTrace();
    }
}

private Initializable replaceWindowView(String fxml) throws IOException {
    FXMLLoader loader = new FXMLLoader();
    loader.setBuilderFactory(new JavaFXBuilderFactory());
    loader.setLocation(Main.class.getResource(fxml));
    AnchorPane page;
    try (InputStream in = Main.class.getResourceAsStream(fxml)) {
        page = (AnchorPane) loader.load(in);
    }
    root.getChildren().removeAll();
    root.getChildren().addAll(page);
    return (Initializable)loader.getController();
}

0 个答案:

没有答案