Close en cascade du ShowDialog

Résolu
marvaneke Messages postés 7 Date d'inscription jeudi 4 juin 2009 Statut Membre Dernière intervention 7 juin 2009 - 4 juin 2009 à 21:28
marvaneke Messages postés 7 Date d'inscription jeudi 4 juin 2009 Statut Membre Dernière intervention 7 juin 2009 - 7 juin 2009 à 16:07
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

marvaneke Messages postés 7 Date d'inscription jeudi 4 juin 2009 Statut Membre Dernière intervention 7 juin 2009
7 juin 2009 à 16:07
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+
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
4 juin 2009 à 21:53
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 #   
0
marvaneke Messages postés 7 Date d'inscription jeudi 4 juin 2009 Statut Membre Dernière intervention 7 juin 2009
4 juin 2009 à 22:04
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.
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
4 juin 2009 à 22:13
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 #   
0
Rejoignez-nous