Fermer la fenêtre courante

Résolu
Signaler
Messages postés
27
Date d'inscription
jeudi 2 septembre 2004
Statut
Membre
Dernière intervention
28 juin 2008
-
Messages postés
27
Date d'inscription
jeudi 2 septembre 2004
Statut
Membre
Dernière intervention
28 juin 2008
-
Bonjour!
Une question toute simple, mais je débute...
J'ai une application avec deux forms, Form1 est la principale, Form2 est appelée à partir d'un bouton sur la Form1.
Je voudrais créer un bouton sur la Form2 qui fermerait cette form (en fait Form2 est une fenêtre About...)

Merci

6 réponses

Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
55
Bonjour,
Si j'ai bien compris, un simple this.Close(); sur l'evenement associé au click de ton bouton suffirait.



Mx
MVP C#
Messages postés
27
Date d'inscription
jeudi 2 septembre 2004
Statut
Membre
Dernière intervention
28 juin 2008

merci!
simple comme bonjour, en effet! Mais pourquoi un Form2.Close(); ne donne rien?

Immerczeck
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
55
Parce que Form2 ne designe pas ton instance de cette fenetre, mais l'objet a instancier. Si tu as fait : Form2 f2 = new Form2(); tu as déclaré une nouvelle instance de ton objet Form2, et c'est avec cette instance (f2) que tu peux faire joujou



Mx
MVP C#
Messages postés
27
Date d'inscription
jeudi 2 septembre 2004
Statut
Membre
Dernière intervention
28 juin 2008

mon instance s'appelle About, et About.Close(); m'amène tout de même à une erreur...
Messages postés
3466
Date d'inscription
lundi 16 octobre 2000
Statut
Membre
Dernière intervention
30 octobre 2008
55
Oui, mais c'est ta form qui a instancié "About" qui a conscience qu'elle s'appelle ainsi.
En gros, ton instance ne connait pas sous quel nom elle a été instanciée, elle se connait en tant que "this". (tu pourrais aussi tres bien mettre "Close()" a la place de "this.Close()". Cela signifie juste qu'elle fait appel a sa méthode Close();
Si tu avais voulu fermer cette instance depuis la fenetre qui l'a instanciée, "About.Close();" fonctionnerait.




Mx
MVP C#
Messages postés
27
Date d'inscription
jeudi 2 septembre 2004
Statut
Membre
Dernière intervention
28 juin 2008

ok merci beaucoup!