[Java] fermer 1 seule fenetre

Fermé
the_moon Messages postés 40 Date d'inscription dimanche 13 mars 2005 Statut Membre Dernière intervention 10 août 2010 - 30 avril 2007 à 15:54
 Pierro - 4 mai 2007 à 11:42
Bonjour,

Je suis en train de realiser une application graphique java composee de plusieurs fenetres, et je souhaite que le bouton permetant de valider les operations effectuees avec une fenetre en particulier permette aussi de fermer cette fenetre.

Comment dois-je m'y prendre pour que ce bouton ne ferme que la fenetre courante et pas toutes les fenetres de mon application ?

Je pense que la solution est assez simple mais je n'arrive pas a la trouver...
Merci beaucoup !
A voir également:

4 réponses

the_moon Messages postés 40 Date d'inscription dimanche 13 mars 2005 Statut Membre Dernière intervention 10 août 2010 13
3 mai 2007 à 17:47
Merci.

La solution du fichier xml me parait un peu compliquee pour ce que je veux en faire, donc j'abandonne l'idee pour l'instant, je verrais plus tard si j'ai du temps a y consacrer.
J'ai essaye la fonction "dispose()", c'est exactement ce que je cherchais, merci !


J'aimerais maintenant ajouter une contrainte a mon probleme initial:

est-il possible de bloquer l'execution de mon programme tant que la fenetre qui vient d'etre creee n'est pas fermee ?
Je voudrais en fait realiser une fenetre qui ait le meme comportement qu'une boite de dialogue "JOptionPane", c'est a dire qui bloque l'execution tant qu'elle n'est pas validee.


Pour expliquer avec plus de details: j'ai une 1ere JFrame contenant un bouton. Un clic sur ce bouton appelle la fonction "actionPerformed(...)".
Dans cette fonction je cree ma seconde JFrame (appel du constructeur d'une autre classe). La nouvelle fenetre demande alors des renseignements a l'utilisateur. Quand l'utilisateur a fini, il clique sur un bouton qui valide les modifications et la 2eme fenetre se ferme avec la fonction dispose().
Et la, je voudrais reprendre l'execution de la fonction "actionPerformed(...)" de ma premiere classe, afin de realiser une operation utilisant les donnees qui viennent d'etre entrees par l'utilisateur dans la 2nde fenetre.
(Je precise que l'enregistrement de ces donnees n'est pas un probleme, simplement la fin de la fonction actionPerformed se deroule avant cet enregistrement, c'est la qu'est mon probleme !)

Est-ce possible ?

Merci beaucoup !
3
Salut,

Je ne crois pas qu'une JFrame puisse avoir ce comportement. Par contre je pense que tu peux utiliser une JDialog modale à la place.

Pierro.
0
Bj0 Messages postés 74 Date d'inscription mercredi 25 avril 2007 Statut Membre Dernière intervention 5 octobre 2007 21
2 mai 2007 à 14:13
euh tu enregistre la position de tes fenetres dans un fichiers XML...
et tu parse ce fichier a chaque démarage du programme ...
sans les sauvegarder quelque part toutes les données et les parametres de ton programme seront perdus si tu ferme l 'exécution du programme ... si tu les stock dans un fichier XML par exemple tu pourra les réutiliser
1
Bj0 Messages postés 74 Date d'inscription mercredi 25 avril 2007 Statut Membre Dernière intervention 5 octobre 2007 21
30 avril 2007 à 16:55
this.dispose();


ou this est ta fenetre
0
the_moon Messages postés 40 Date d'inscription dimanche 13 mars 2005 Statut Membre Dernière intervention 10 août 2010 13
1 mai 2007 à 19:01
Merci bien, je vais tester ca.

Encore une question a propos des fenetres, y a t'il un moyen de conserver la position choisie par l'utilisateur ?
Je voudrais que l'utilisateur puisse positionner les multiples fenetres de mon application comme il le souhaite, et que ce positionnement soit conserve lors du redemarrage du programme.
Est-ce possible assez simplement ?


Et aussi a propos des JButton, y a t'il un parametre permettant de fixer leur largeur independament du texte qu'ils contiennent ?

Merci pour vos reponses !
0