Да, конечно. Вы пытались запланировать закрытие?
JFrame f = new JFrame();
final JDialog dialog = new JDialog(f, "Test", true);
//Must schedule the close before the dialog becomes visible
ScheduledExecutorService s = Executors.newSingleThreadScheduledExecutor();
s.schedule(new Runnable() {
public void run() {
dialog.setVisible(false); //should be invoked on the EDT
dialog.dispose();
}
}, 20, TimeUnit.SECONDS);
dialog.setVisible(true); // if modal, application will pause here
System.out.println("Dialog closed");
Приведенная выше программа закроет диалоговое окно через 20 секунд, и вы увидите текст «Диалог закрыт» , напечатанный на консоли