Pour la frame je pense qu'en faisant un truc du genre MyFrame.Dispose() il tue la frame de toute facon il y a un Garbage Collector en Java....
Pour la boite de dialogue voila un truc :
int option = JOptionPane.showOptionDialog(f, message, titre,
JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE, null,
new String[] {nonString}, nonString);