Я новичок в JavaFX, и я разрабатываю простое приложение, и мне нужно создать окно подтверждения для закрытия этапа. Я сделал это без проблем без FXML, когда у меня в том же методе есть инициализация и закрытие этапа. Но когда я делаю это с FXML, когда я открываю сцену в другом классе, она не закрывает его из класса контроллера, даже если я создаю глобальный экземпляр стадии.
public class ConfirmBox {
private Stage confirmBoxStage = new Stage();
boolean confirmClose;
// Confirm box -----------------------------------------------------------------------------------------------------
public boolean confirmClose() {
Parent rootConfirmBox = null;
confirmBoxStage.initModality(Modality.APPLICATION_MODAL);
try {
rootConfirmBox = FXMLLoader.load(getClass().getResource("ConfirmBox.fxml"));;
} catch (IOException e) {
System.out.println("Exception ConfirmBox.java//confirmBoxScene");
e.printStackTrace();
}
Scene confirmBoxScene = new Scene(rootConfirmBox, 640, 480);
confirmBoxStage.setScene(confirmBoxScene);
confirmBoxStage.showAndWait();
return confirmClose;
}
// Closing the confirm box -----------------------------------------------------------------------------------------
public void closeConfirmBox() {
confirmBoxStage.close();
}
}