【发布时间】:2016-04-25 12:55:38
【问题描述】:
我正在使用 JavaFX 并正在做一个 Schoolproject。
关于我的程序,我有一个登录屏幕,如果我按下登录,我会来到大型机。主机的内容区域是空的,因为我在使用菜单栏中的按钮时为构建主机的 AnchorPane 加载了内容。
当我按下登录按钮时,我想在其中加载大型机和主窗格。但我不知道如何将窗格从另一个类加载到大型机中。
这是我的代码:
加载主机的代码:
@FXML
protected void login(ActionEvent event) throws IOException, URISyntaxException {
Stage stage;
Parent root = null;
stage = (Stage) btnLogin.getScene().getWindow();
try{
root = FXMLLoader.load(getClass().getResource("view/mainframe.fxml"));
} catch (IOException e){
e.printStackTrace();
}
Scene scene = new Scene(root, 1280, 900);
stage.setScene(scene);
stage.show();
}
将主页窗格加载到大型机中的代码:
@FXML
protected void mHome(ActionEvent event) throws IOException, URISyntaxException {
try {
URL url = getClass().getResource("view/home.fxml");
FXMLLoader fxmlLoader = new FXMLLoader();
fxmlLoader.setLocation(url);
fxmlLoader.setBuilderFactory(new JavaFXBuilderFactory());
AnchorPane page = (AnchorPane) fxmlLoader.load(url.openStream());
aContent.getChildren().clear();
aContent.getChildren().add(page);
}
catch (IOException e) {
e.printStackTrace();
}
}
这两个方法在不同的类中。
如果您需要更多信息,请告诉我:)
谢谢你,提莫
【问题讨论】:
标签: java javafx actionevent