JavaFX阶段显示为空白

时间:2018-01-08 17:53:19

标签: java javafx fxml

我尝试使用JavaFX构建一个简单的fxml应用程序,并且start方法如下所示:

public void start(Stage primaryStage) {
    try {
        Parent root = FXMLLoader.load(getClass().getClassLoader().getResource("FenetreCaisse.fxml"));
        Scene scene = root.getScene();
        scene.getStylesheets().add(getClass().getClassLoader().getResource("/application.css").toExternalForm());
        primaryStage.setScene(scene);
        primaryStage.show();
    } catch(Exception e) {
        e.printStackTrace();
    }
}

当我尝试运行它时,我会在<code>NullPointerException</code>行获得scene.getStylesheets()...

我尝试评论该行,因为我在&#34; application.css&#34;中没有任何代码。文件,但是当我运行代码时,我得到的只是一个白色的空白窗口。

1 个答案:

答案 0 :(得分:4)

root.getScene()

返回包含root的当前场景,如果尚未添加到场景中,则为null。因此,您要将舞台场景设置为空。

使用

Scene scene = new Scene(root);

如果您没有样式表,显然会删除设置样式表的行。