cancel . setOnMouseClicked ( new EventHandler < MouseEvent > ( ) { @Override public void handle ( MouseEvent event ) { // 像这样关闭舞台会绕过 onCloseRequest 事件处理程序(如果有的话) Stage stage = ( Stage ) cancel . getScene ( ) . getWindow ( ) ; // 关闭前通知一下事件处理 stage.getOnCloseRequest().handle(null); stage . close ( ) ; } ) ;

一定要在按钮cancel初始化完成后获取场景,否则空指针异常