特定时间后JavaFX 2 Window.hide

标签 java window javafx-2

我想在 30 秒(或其他时间)后关闭/隐藏窗口 特定的时间)。我尝试了一下这段代码:

Calendar cal = Calendar.getInstance();
cal.getTime().getTime();

但我真的不知道如何让它工作。我正在使用 JavaFX 2。如何指定在使用 window.hide() 隐藏窗口之前等待的时间量?

最佳答案

使用 PauseTransition很简单,因为它将所有内容都保留在 JavaFX 应用程序线程上,您无需担心潜在的线程问题。

如果您使用的是 Java 8:

final Window window = new Stage();
. . .
PauseTransition pause = new PauseTransition(Duration.seconds(30));
pause.setOnFinished(e -> window.hide());
pause.play();

或者,如果您使用的是 Java 7,请将 lambda 替换为:

pause.setOnFinished(new EventHandler<ActionEvent>() {
    @Override
    public void handle(ActionEvent event) {
        window.hide();
    }
});

关于特定时间后JavaFX 2 Window.hide,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21184764/

相关文章:

java - 修改 java 类以在编译时包含特定注释

java - JSplitPane 右侧组件的背景图像

java - 框架布局非法状态异常 : The specified child already has a parent

python - 为什么 tkinter 无法识别该窗口正在调整大小?

wpf - 使用 WPF 更改 FontSize 与窗口大小的关系?

javafx-2 - JavaFX 导致 X 服务器崩溃

Java:剧院座位表

javascript - window.open 操作

JavaFX 删除工具栏和窗口顶部之间的分隔

JavaFX 应用程序名称