Form en . net Fenêtre modale se réouvrant apres al première fermeture [Résolu]

Signaler
Messages postés
7
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
27 juillet 2005
-
Messages postés
7
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
27 juillet 2005
-
Bonjour,

J'ai créer une fenêtre modale dans une autre fenêtre modale qui, quand jecliqiue sur la croix se referme puis se réouvre et ne se ferme qu'après le second click

Merci de votre aide


Dim Formpm
As Windows.Forms.Form


Formpm =
New Form



Dim ressources
As System.Resources.ResourceManager


ressources =
New System.Resources.ResourceManager(
GetType(CalibStereoUserControl))


pm =
New Cognex.VisionPro.PMAlign.CogPMAlignEdit



CType(pm, System.ComponentModel.ISupportInitialize).BeginInit()


Formpm.SuspendLayout()


pm.Enabled =
True


pm.Location =
New System.Drawing.Point(0, 0)


pm.Name = "PMAlign2"


pm.OcxState =
CType(ressources.GetObject("pm.OcxState"), System.Windows.Forms.AxHost.State)


pm.Size =
New System.Drawing.Size(760, 520)


pm.TabIndex = 0


Formpm.MaximizeBox =
False


Formpm.MinimizeBox =
False


Formpm.FormBorderStyle = FormBorderStyle.FixedDialog


Formpm.Text = "PMAlign Edit Control of Camera 2"


Formpm.Name = "PMAlign Edit Control of Camera 2"


Formpm.Size =
New System.Drawing.Size(780, 560)


Formpm.Controls.Add(pm)



CType(pm, System.ComponentModel.ISupportInitialize).EndInit()


Formpm.ResumeLayout()


pm.Subject = _subject.PMAlign2


pm.Subject.InputImage = _subject.InputImage2


Formpm.ShowDialog()


Formpm.Dispose()

8 réponses

Messages postés
7
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
27 juillet 2005

J'ai localisé le problème

J'ouvrais la fenêtre sur un événement
Mais l' "Event Handler" s'éxecute 2 fois par événement .

Merci quand mm
Bye
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 195 internautes nous ont dit merci ce mois-ci

Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Statut
Membre
Dernière intervention
15 septembre 2009
4
Salut,

tu decrais utiliser la fenêtre de propriétés pour attribuer la taille, le nom (et tout ce qui est constant) à tes objets, ainsi ton code est allégé.
Pour ton problème, je ne vois pas pourquoi ta fenêtre se rouvre une seconde fois...mais es-tu sûr que Formpm.Dispose() soit indispensable?

@+
Messages postés
7
Date d'inscription
jeudi 22 janvier 2004
Statut
Membre
Dernière intervention
4 novembre 2009

enleve le dipose et remplace par

Formpm = Nothing



et verifi si sa marche mieu.
Messages postés
7
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
27 juillet 2005

J'ouvre ma fenetre dynamiquement donc j ai pas l'éditeur de propriétés pour ces objets
L'utilisation du dispose sert a supprimer une erreur de gestion de mémoire. Si je l'enlève ça ne résoud pas mon problme

Néammoins merci de votre attention
Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Statut
Membre
Dernière intervention
15 septembre 2009
4
Essaye quand même la proposition de exatex pour voir...
Messages postés
7
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
27 juillet 2005

J'ai essayé
Messages postés
745
Date d'inscription
mardi 30 novembre 2004
Statut
Membre
Dernière intervention
15 septembre 2009
4
Essaye de mettre Me.Close() dans l'évènement Closing de ton formulaire.
Messages postés
7
Date d'inscription
lundi 27 juin 2005
Statut
Membre
Dernière intervention
27 juillet 2005

ca marche pas
Dispose est mieux que close car dipsose libere la mémoire utilisée par lui et ses composants