这是一个按钮的事件处理程序,它暂停程序1秒钟。每当我暂停它时,我想要一个窗口出现,说该程序暂停了1秒钟。我添加了一个标签,但它没有显示出来。为什么会这样?
public void handle(MouseEvent me) {
try {
Label label1 = new Label("Paused for one second.");
label1.setAlignment(Pos.CENTER);
label1.setVisible(true);
Thread.sleep(1000);
} catch (InterruptedException ex) {
Thread.currentThread().interrupt();
}
}
});
P.S。当我点击按钮时,屏幕会冻结一秒钟,因此事件处理程序正在运行,但标签根本没有显示。
答案 0 :(得分:1)
您只需创建一个新标签。您不会将其添加到节点。
将标签添加到场景的某个窗格中以便能够显示它。
从句柄方法中创建标签,然后在handle方法上执行setVisible(true)
。 (默认情况下,可见性设置为true。因此,在创建标签时将其设置为false)