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);