JavaFX警报时间

时间:2018-11-26 08:49:11

标签: java multithreading javafx alert

嗨,我正在尝试创建一个警报,该警报将显示特定时间,然后消失。我正在使用一个单独的线程来实现这一目标。但是,即使日志记录语句按预期运行,它似乎也无法根据我编写的内容运行,警报似乎并没有遵循相同的流程。 这里的警报从不显示;就像它过早地调用.close()方法一样。 这是我为此编写的代码:

    public static void done(String title, String content, int timeMS) {
    Thread thread = new Thread(() -> {
        Platform.runLater( () -> {
            Alert doneAlert = new Alert(AlertType.INFORMATION);
            p.p("DONE dialog");
            doneAlert.setTitle(title);
            doneAlert.setContentText(content);
            doneAlert.show();
            try {
                p.p("DONE dialog show");
                Thread.sleep(timeMS);
            } catch (InterruptedException e) {
                e.printStackTrace();
            } finally {
                p.p("DONE dialog close");
                doneAlert.close();
            }
        });
    });

    thread.start();
}

0 个答案:

没有答案