@Override
public void start(Stage primaryStage) {
playerIsSelected = false;
enemyIsSelected = false;
Blockquote可以编译,但是当我单击EXIT按钮时,它显示错误为:线程“JavaFX应用程序线程”中的异常java.lang.NullPointerException.And单击“退出”按钮不会退出窗口。 / p>
答案 0 :(得分:1)
您的代码中没有任何地方定义了标识符stage
。但是,由于您的代码正在编译,我认为这是在方法之外定义的。但是,考虑到您已调用primaryStage.show();
,最终您可能希望执行primaryStage.close();
。
改变这个:
public void exit(){
stage.close(); //<-- cause of the NullPointerException
}
到此:
public void exit(){
primaryStage.close();
}