是的,我看到了这个答案Passing Parameters JavaFX FXML。但它不起作用。
setDayParting
来自ControllerNº1,但当我在ControllerNº2中调用updatePreview
时,我传递的参数不存在。
为什么这不起作用?
在ControllerNº1中传递参数:
private void giveParameterToController() {
FXMLLoader fxmlLoader = new FXMLLoader(getClass().getResource(Main.newFileScreenFile));
NewFileScreenController newFileScreenController;
try {
Pane pane = fxmlLoader.load();
newFileScreenController = fxmlLoader.getController();
newFileScreenController.setDayParting("Working");
myController.setScreen(Main.newFileScreen);
} catch (IOException e) {
e.printStackTrace();
}
}
控制器Nº2:
public void setDayParting(String parting){ dayParting = parting; System.out.println(dayParting); } private void updatePreview(){ System.out.println(dayParting); }
output:
Working
null