这让我疯了。我试图从FXML Loder获取控制器,但我得到一个NullPointerException。
我尝试获取控制器数据的类。
Node node= (Node) event.getSource();
Stage stage= (Stage) node.getScene().getWindow();
FXMLLoader loader = new FXMLLoader(getClass().getResource("/view/admin.fxml"));
BorderPane bp = loader.load();
Scene scene = new Scene(bp);
stage.setScene(scene);
adminController ac = loader.getController();
System.out.println(ac.adminName.getText());
ac.setLoggedIn(admin);
stage.show();
xml文件和控制器工作正常,因为当我删除ac.setLoggedIn(admin)行中的注释时,它不会给我一个例外。
答案 0 :(得分:0)
在控制器中,我已将FXML对象声明为Label而不是文本对象。同样在我在这里写的代码中,我尝试在将对象实际分配给控制器之前打印管理员名称。