Hello I have app with alert and after no response from user I want to refresh alert/show it again and for some reason I don't see second alert it's empty like:
I am closing alert if it's showing so I don't know why next alert is empty. package application;
//imports
public class Main extends Application{
int number = 50;
public static void main(String[] args) {
launch(args);
}
@Override
public void start(Stage primaryStage) throws Exception {
alertMethod();
}
private void alertMethod() {
number += number + 10;
Alert alert = new Alert(Alert.AlertType.CONFIRMATION);
alert.setTitle("Title");
alert.setHeaderText("Number " + number);
alert.setContentText("Choose your option.");
ButtonType buttonTypeOne = new ButtonType("Yes");
ButtonType buttonTypeCancel = new ButtonType("No", ButtonBar.ButtonData.CANCEL_CLOSE);
alert.getButtonTypes().setAll(buttonTypeOne, buttonTypeCancel);
Thread newThread = new Thread(new Runnable() {
@Override
public void run() {
try {
Thread.sleep(2000);
} catch (InterruptedException ex) {
Thread.currentThread().interrupt();
}
Platform.runLater(new Runnable() {
@Override
public void run() {
if(alert.isShowing()) {
alert.close();
}
alertMethod();
}
});
}
});
newThread.start();
Optional<ButtonType> result = alert.showAndWait();
if (result.get() == buttonTypeOne){
System.out.println("Pressed Yes");
} else if (result.get() == buttonTypeCancel) {
System.out.println("Pressed No");
}
}
}