【发布时间】:2023-03-20 21:46:01
【问题描述】:
@FXML
private void opensettings(ActionEvent event) throws IOException {
Stage stage = null;
Parent root = null;
if(event.getSource() == settings && stage.isFullScreen() == true){
stage = (Stage)settings.getScene().getWindow();
root = FXMLLoader.load(getClass().getResource("fxml/Settings.fxml"));
stage.setScene(new Scene(root));
stage.setTitle("Settings");
stage.setFullScreen(true);
}
}
我不知道如何检查我当前的阶段是否以全屏模式运行。以上是我目前的java代码。
【问题讨论】:
-
stage.isFullScreen()不工作吗? -
不是它的说法:原因:java.lang.NullPointerException at sample.OpenController.opensettings(OpenController.java:75) ... 58 更多
-
在初始化阶段之前你是否打电话给
stage.isFullScreen()? -
@bilesh 我现在对其进行了初始化,但它仍然从我的全场景“主窗口”跳转到非全场景“设置窗口”,实际上我希望如果我的“主窗口”处于全场景模式“设置窗口”也应该处于全场景模式...:/
-
嗯...
Window不是Stage。根本 - 但Stage是Window,而不是相反。你在那里做了很多非法铸造,这可能是你的核心问题。铸造是(非常)糟糕的 - 除了C / C ++之外的几乎任何语言,并且告诉你的每个人都只是......没有经验,充其量只是一个业余爱好者。对不起。至少做一些 checked 转换,这将阻止NullPointerException或ClassCastException。
标签: java javafx fullscreen