Close en cascade du ShowDialog [Résolu]

Signaler
Messages postés
7
Date d'inscription
jeudi 4 juin 2009
Statut
Membre
Dernière intervention
7 juin 2009
-
Messages postés
7
Date d'inscription
jeudi 4 juin 2009
Statut
Membre
Dernière intervention
7 juin 2009
-
Salut,

J'ai une fenêtre principale, qui appelle par un ShowDialog la fenêtre Form1.  Dans Form1, j'ai un ShowDialog qui appelle la fenêtre Form2.  Lorsque je ferme Form2, par l'instruction Me.Close, il ferme Form2, et aussi directement Form1, et seule la fenêtre principale reste affichée !!!

J'ai déjà (mal ?) cherché sur internet mais je n'ai rien trouvé.

Merci d'avance pour votre aide

4 réponses

Messages postés
7
Date d'inscription
jeudi 4 juin 2009
Statut
Membre
Dernière intervention
7 juin 2009

J'ai trouvé la solution :

Dans le design de l'écran, le bouton qui contient l'instruction ShowDialog, avait la Properties à Cancel au lieu de None !

Casy, encore merci pour ton aide.

A+
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
La fermeture de Form2 n'entraine pas automatiquement la fermeture de Form1. C'est ton code dans le Form1 qui, à la fermeture de Form2, vient fermer le Form1

Ton Form2.ShowDialog ne serait-il pas, par hasard, dans le FormClosing du Form1 ???

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #   
Messages postés
7
Date d'inscription
jeudi 4 juin 2009
Statut
Membre
Dernière intervention
7 juin 2009

Casy, merci pour ta réponse.

Dans Form1, je n'ai pas les procédures (sub)  FormClosing, FormClosed.
T'aurais pas une autre idée ?

Merci d'avance.
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
37
Par principe le ShowDialog est bloquant, il n'y a donc que 2 solutions
- Soit la fermeture de Form1 est déjà initialisée lorsque tu appelle la Form2, elle se poursuit donc à la fermeture de Form2
- Soit la fermeture n'est pas initialisée. Dans ce cas, c'est dans le code de Form1 qui se trouve après le Form2.ShowDialog que la fermeture de Form1 est demandée

Vérifie ton code, vérifie aussi que ce n'est pas un erreur qui te fait fermer la fenêtre.
Éventuellement vérifie aussi que ce n'est pas quelque part dans le code de Form2 que tu demande la fermeture de Form1

---- Sevyc64  (alias Casy) ---- # LE PARTAGE EST NOTRE FORCE #