[RESOLU] Supprimer/fermer une fenetre ( de la mémoire )

Supprimer/fermer une fenetre ( de la mémoire ) [RESOLU] - Java - Programmation

Marsh Posté le 30-10-2007 à 11:58:47    

Bonjour a tous,
 
Je cherche des informations suplémentaires sur les interfaces graphique et plus particulierement au sujet de la fermeture de fenetre ( JFrame ). Il y a la méthode setVisible() et Dispose() qui font toutes les deux la même chose il me semble a savoir rendre la fenêtre invisible. Mais voila elle est toujours en mémoire et si dans mon application j'ai 100 fenêtre j'aimerai pouvoir détruire des fenêtres qui sont inutiles et pas seulement les rendre invisible afin de ne pas être très vite surchargée.  
 
J'avais trouvé des méthode dans la classe System mais en général quand je l'utilise ça ferme l'application et pas seulement les fenêtres choisient. J'avais trouvé aussi une méthode destroy dans la doc mais impossible de la faire fonctionner.  
 
J'ai aussi trouvé ça en recharchant sur google : JFrame.setDefaultOperationOnClose(DISPOSE); Mais je ne suis pas sure de comprendre exactement ce que ça fait, peut êitre est ce la solution a mon problème ?
 
Donc voila ma question est comment fermer une fenêtre par une méthode et la supprimer de la mémoire donc et pas seulement la rendre invisible ?  
 
Merci d'avance, Eva.


Message édité par Evanok le 30-10-2007 à 19:43:35
Reply

Marsh Posté le 30-10-2007 à 11:58:47   

Reply

Marsh Posté le 30-10-2007 à 17:57:31    

setVisible() permet de masquer/drendre visible une fenêtre.
dispose(), par contre, détruit les ressources mémoire liées à la fenêtre (précisément ce que tu cherches à faire).
 
Quant à JFrame.setDefaultOperationOnClose(DISPOSE), cela permet d'automatiser l'appel à dispose() sur une fenêtre lorsque l'utilisateur ferme cette fenêtre (par exemple en cliquant sur le bouton de fermeture de la fenêtre), sans avoir à écrire explicitement une classe WindowListener (qui implémenterait windowClosing() pour appeler dispose()).

Reply

Marsh Posté le 30-10-2007 à 19:42:55    

ah d'accord donc dispose et visible sont bien differents. Merci de ta réponse  :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed