Problème de remplacement

Résolu
daikyo Messages postés 25 Date d'inscription mardi 4 octobre 2005 Statut Membre Dernière intervention 27 avril 2008 - 3 avril 2008 à 16:32
daikyo Messages postés 25 Date d'inscription mardi 4 octobre 2005 Statut Membre Dernière intervention 27 avril 2008 - 5 avril 2008 à 15:55
Bonjour à tous, je rencontre un petit problème:

Je veux appeler une fenêtre B à partir d'un bouton qui est sur la fenêtre A mais que cette fenêtre A se ferme en même temps et laisse place donc uniquement à la fenètre B.

Je pensais faire ceci et bien sûr cela ne marche pas :p

(new InGame()).Show(this);
this.Close();

Merci pour vos futures réponses :)

9 réponses

sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
3 avril 2008 à 16:43
Soit tu fais A.Hide();

soit tu modifies ta méthodes Main()
en :

static void Matin() {
   [...]
   // Application.Run(new Form1());
   Form1 f = new Form1();
   f.Show();

   Application.Run();
}

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]
3
daikyo Messages postés 25 Date d'inscription mardi 4 octobre 2005 Statut Membre Dernière intervention 27 avril 2008
3 avril 2008 à 16:34
Avec ma méthode actuelle, cela ferme toute l'application.
0
daikyo Messages postés 25 Date d'inscription mardi 4 octobre 2005 Statut Membre Dernière intervention 27 avril 2008
3 avril 2008 à 16:43
Désolé si je n'arrivais pas à mettre en page mon post, les barres d'outils de création de post ne fonctionnent pas avec Firefox 2 et Opera.
0
daikyo Messages postés 25 Date d'inscription mardi 4 octobre 2005 Statut Membre Dernière intervention 27 avril 2008
3 avril 2008 à 17:52
Merci beaucoup :)

Je vais utiliser la 2ème méthode car apparament avec la 1ère méthode, la fenètre n'est pas réellement fermée mais elle est juste cachée comme le dit son nom, je l'ai constaté quand j'ai fermé ma fenêtre B et que je ne pouvais toujours pas toucher à mon code source sur VS2005, il me disait que le programme était encore en exécution.

Il ne me manque plus qu'à trouver un moyen d'accéder à la fenêtre A à partir de la B.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
daikyo Messages postés 25 Date d'inscription mardi 4 octobre 2005 Statut Membre Dernière intervention 27 avril 2008
3 avril 2008 à 23:48
Bonsoir, je rencontre un autre problème toujours dans le même périmètre, je résumé pour vous donner le contexte :

Je lance l'application, cela ouvre une fenêtre A
Je clique sur un bouton, celui-ci a pour effet d'ouvrir une fenêtre B et de fermer la fenêtre A avec un .Close()

Lorsque que je ferme la fenêtre B avec la petite croix rouge (d'en haut à droite), je n'ai plus de fenêtre active mais le programme semble encore en exécution, j'en conclus que cette croix rouge fait l'équivalent d'un .Close() et que la fenêtre A est toujours cachée quelque part alors que je souhaite me débarasser définitivement d'elle une fois l'ouverture de la fenêtre B (par le bouton) est demandée !
Je souhaite donc que l'application s'arrête complétement quand l'utilisateur clique sur la croix rouge de la fenêtre B !

Merci de vos réponses futures :)
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
4 avril 2008 à 05:52
il faut appeler la méthode : Application.Exit()

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]
0
daikyo Messages postés 25 Date d'inscription mardi 4 octobre 2005 Statut Membre Dernière intervention 27 avril 2008
4 avril 2008 à 09:04
Salut,

Oui c'est ce à quoi je pensais mais est-ce que je peux dire à la petite croix rouge de fermeture d'appeler cette méthode Application.Exit() ? Sinon, est-ce que je peux détecter la fermeture d'une fenêtre ?

Ma fenêtre A peut être fermée soit par un bouton Quitter (avec un Application.Exit() donc la aucun problème) soit par la petite croix rouge, or celle-ci ne ferme pas complètement le programme apparament.
Quand j'appelle ma fenêtre B, la fenêtre A est fermée par un Close() et ma fenêtre B ne peut être fermée que par la petite croix rouge qui ne ferme pas complétement l'application non plus donc j'ai une sorte de processus qui tourne encore sans fenêtre.
0
sebmafate Messages postés 4936 Date d'inscription lundi 17 février 2003 Statut Membre Dernière intervention 14 février 2014 38
4 avril 2008 à 09:14
intercepte l'évènement Closed de te fenêtre...

Sébastien FERRAND (blog)
Consultant Indépendant
[Microsoft Visual C# MVP]
0
daikyo Messages postés 25 Date d'inscription mardi 4 octobre 2005 Statut Membre Dernière intervention 27 avril 2008
5 avril 2008 à 15:55
Merci, tout est réglé ;)
0