我的javafx程序中的此语句导致了nullpointerexception,我不知道为什么

时间:2018-07-26 01:51:36

标签: java javafx nullpointerexception

import javafx.application.*;
import javafx.geometry.*;
import javafx.scene.*;
import javafx.scene.layout.*;
import javafx.scene.text.*;
import javafx.stage.*;

public class Drawing extends Application{
private BorderPane mainPane;
private HBox statusBox;
private Text statusText;

public void start(Stage primaryStage) {

    statusText = new Text("OFF");
    statusBox = new HBox(statusText);
    statusBox.setAlignment(Pos.CENTER);
    mainPane.setTop(statusBox);          //nullPointerException here

    Scene scene = new Scene(mainPane, 1000, 1000);
    primaryStage.setTitle("Draw Something");
    primaryStage.setScene(scene);
    primaryStage.setResizable(false);
    primaryStage.show();
}

public static void main(String args[]) {
    launch(args);
}
}

我想创建一个BorderPane并设置一些文本的顶部。我创建了一个HBox放入其中。我不知道为什么会发生此错误。

1 个答案:

答案 0 :(得分:3)

您的mainPane.setTop(statusBox)尚未实例化。在使用之前先由mainPane实例化mainPane = new BorderPane()