empiret
Messages postés38Date d'inscriptionmercredi 6 avril 2005StatutMembreDernière intervention13 mars 2006
-
27 févr. 2006 à 17:07
empiret
Messages postés38Date d'inscriptionmercredi 6 avril 2005StatutMembreDernière intervention13 mars 2006
-
28 févr. 2006 à 15:41
Bonjour.
Quand je lance mon programme, j'ouvre un JFrame.
A partir de ce JFrame je peux ouvrir d'autres JFrames. C'est comme "Word".
Quand je ferme une fenetre, je voudrais tester si elle est la derniere
ou la seule ouverte, si oui j'arrete le programme si non, je ferme
juste la fenetre courante.
Je sais que je dois utiliser windows listener:
windowClosing, windowClose
Mais comment je fais pour faire mes testes
decrites ci-dessus? Si vous avez des methodes deja faites...je ne
dirai pas non.
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 28 févr. 2006 à 09:36
Ben un truc du genre :
classe Feuille extends JFrame {
static int compteur
public Feuille() {
compteur++;
}
}
Ainsi ton compteur est incrémenté à chaque création d'une nouvelle instance de Feuille, et tu sais combien tu en a lancé, il te suffit juste de décrémenter le compteur à chaque fermeture de feuille.
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 27 févr. 2006 à 17:14
Il te faut un compteur static dans ta classe affichant la fenêtre que tu incrémente dans le constructeur, et que tu décrémente à chaque fois que le listener WindowClose se déclenche par exemple.
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 28 févr. 2006 à 10:39
Une variable static dans une classe partage sa mémoire à TOUTES les instances de cette classe. Du coup, si tu incrémente la valeur de ton compteur, TOUT tes objets de type Feuille auront la même valeur. Donc qu'un objet de type Feuille crée 1 ou 15000 autre Feuille, tu aura toujours le nombre total d'objet crée.