javafx - 如何将警报设置为始终在最前面?

标签 javafx dialog alert always-on-top

假设我有一个简单的警报。

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

我的主要和警报都在同一个线程上。

意思是,在运行我的主程序时,它会检查某些内容,然后在出现问题时弹出警报。

最佳答案

将您的主要舞台设置为始终处于领先地位:

mainStage.setAlwaysOnTop(true);

然后将您的主舞台设置为 Alert 对话框的所有者:
a.initOwner(mainStage);

如果主舞台是警报对话框的所有者,则警报将始终位于主舞台之上。

关于javafx - 如何将警报设置为始终在最前面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41461064/

相关文章:

php - PHP 脚本运行前的警告消息

java - 将图像上的两个点映射到另一个点

JavaFX:实时修改按钮文字

silverlight - Silverlight确认对话框以暂停线程

java - 使用 JOptionPane 打印报告

c++ - 当主 GUI 线程被阻塞时,如何从工作线程创建无模式对话框?

Swift 如何在 paymentQueueRestoreCompletedTransactionsFinished 中显示警报?

java - Javafx 中的动态条形图

java - 更改 InlineCSSTextArea javafX 中突出显示文本的字体/大小/颜色/格式

java - java中的JS样式警告框