Вы пытаетесь показать JDialog независимо от анимации? Чтобы правильно установить порядок, вам может потребоваться объединить эти действия в исполняемый файл, который сразу передается в EDT.
например:
SwingUtilities.invokeLater(new Runnable(){
public void run(){
doAnnimation();
showDialog();
}
}
Лучше всего создать подкласс JDialog, чтобы можно было просто добавить логику doAnnimation () в метод setVisible (..) или show () перед вызовом реализации суперкласса.
Наконец, я полагаю, вам нужно будет вручную установить размеры журнала - я не помню, будет ли Java знать фактический размер диалогового окна, прежде чем он будет показан, так что вы можете получить некоторую бесполезную информацию для вашего анимация, если вы запрашиваете размер перед его отображением.