java设置在FXML中创建的JavaFX中的BorderPane的中心窗格(nullPointerException)
我花了一些时间试图找出我的逻辑在哪里有缺陷,在这里也看到了类似的问题,但出于某种原因,我一直得到一个nullPointerException:
public class MainWindowController
implements Initializable {
public static final String SCHEDULE_MANAGER = "ScheduleManagerController";
public static final URL SCHEDULE_MANAGER_FXML = ScheduleManagerController.class.getResource("ScheduleManager.fxml");
final SwitchableStackPane customStackPane = new SwitchableStackPane();
@FXML
Button btnScheduleManager; // Value injected by FXMLLoader
BorderPane switchablePane; //Value injected by FXMLLoader
@Override // This method is called by the FXMLLoader when initialization is complete
public void initialize(URL fxmlFileLocation, ResourceBundle resources) {
assert btnScheduleManager != null : "fx:id=\"ScheduleManager\" was not injected: check your FXML file 'HOECTool.fxml'.";
assert switchablePane != null : "fx:id=\"mainPane\" was not injected: check your FXML file 'HOECTool.fxml'.";
customStackPane.loadScreen(SCHEDULE_MANAGER, SCHEDULE_MANAGER_FXML);
switchablePane.setCenter(customStackPane);
}
这会引发nullPointer异常: 可切换窗格。设置中心(customStackPane)
# 1 楼答案
我是个白痴。这就做到了: