Как настроить оповещение, чтобы оно всегда было на вершине?

Допустим, у меня есть простое предупреждение.

Alert a = new Alert(AlertType.NONE);

CustomLabel lbl = new CustomLabel("Testing");
CustomButton ok = new CustomButton("OK");
FlowPane fp = new FlowPane(); 
fp.getChildren().addAll(lbl,ok);

alert.getDialogPane().setContent(fp);
alert.initStyle(StageStyle.TRANSPARENT);

Затем я хотел бы, чтобы это предупреждение всегда отображалось на экране, который я показываю, как мне это сделать?

Установка сцены моей главной страницы в.

mainStage.setAlwaysOnTop(false); //does not work

И мой основной, и оповещение должны быть в одной теме.

Это означает, что при запуске моей основной программы она будет что-то проверять, а затем выдает предупреждение, если что-то не так.

1 ответ

Решение

Установите свою главную сцену так, чтобы она всегда была на высоте:

mainStage.setAlwaysOnTop(true);

Затем установите основной этап, чтобы стать владельцем диалога Alert:

a.initOwner(mainStage);

Если основной этап является владельцем диалогового окна предупреждения, то предупреждение всегда будет в верхней части основного этапа.

Другие вопросы по тегам