--
bonjour
J'aimerai savoir comment ouvrir une form2 depuis une autre (form1) et
surtout comment être sûr de bien libérer la mémoire du contenu de celle-là
quand je la ferme pour retourner sur la form1 ?
Form1 est la fenêtre principale qui contient un menu d'où j'appelle la
form2. Quand j'ai fini d'utiliser la form2 : je la ferme avec un menu ou la
"croix rouge" et retourne sur form1.
Cependant si j'ouvre à nouveau la form2 : elle contient toujours les infos
qu'il y avait dans les textbox avant que je la ferme.....
arrgh !
j'ai essayé ça dans la form1 :
Private Sub DécomposerRéduireToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
DécomposerRéduireToolStripMenuItem.Click
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Fred
Bonjour
Private Sub DécomposerRéduireToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DécomposerRéduireToolStripMenuItem.Click
Me.Hide() 'c'est la form1
Dim form2 As new Frm_decomposer form2.ShowDialog
End Sub
PS : ne commence pas tes messages avec un délimiteur de signature (deux tirets et un espace)
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Bonjour
Private Sub DécomposerRéduireToolStripMenuItem_Click(ByVal sender As
System.Object, ByVal e As System.EventArgs) Handles
DécomposerRéduireToolStripMenuItem.Click
Me.Hide() 'c'est la form1
Dim form2 As new Frm_decomposer
form2.ShowDialog
End Sub
PS : ne commence pas tes messages avec un délimiteur de signature (deux
tirets et un espace)
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Private Sub DécomposerRéduireToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DécomposerRéduireToolStripMenuItem.Click
Me.Hide() 'c'est la form1
Dim form2 As new Frm_decomposer form2.ShowDialog
End Sub
PS : ne commence pas tes messages avec un délimiteur de signature (deux tirets et un espace)
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Pascal
bonjour c'est le fait d'ouvrir comme ça Frm_decomposer :
Dim form2 As new Frm_decomposer form2.ShowDialog
qui fait que, quand je ferme form2 , avec me.close() il n'y a plus rien en mémoire ?
PS : ne commence pas tes messages avec un délimiteur de signature (deux tirets et un espace)
Ah bon pourquoi ?!!
merci de ton aide pascal
bonjour
c'est le fait d'ouvrir comme ça Frm_decomposer :
Dim form2 As new Frm_decomposer
form2.ShowDialog
qui fait que, quand je ferme form2 , avec me.close() il n'y a plus rien en
mémoire ?
PS : ne commence pas tes messages avec un délimiteur de signature (deux
tirets et un espace)
bonjour c'est le fait d'ouvrir comme ça Frm_decomposer :
Dim form2 As new Frm_decomposer form2.ShowDialog
qui fait que, quand je ferme form2 , avec me.close() il n'y a plus rien en mémoire ?
PS : ne commence pas tes messages avec un délimiteur de signature (deux tirets et un espace)
Ah bon pourquoi ?!!
merci de ton aide pascal
Fred
Dans : news:462f10ff$0$27378$, Pascal disait :
bonjour c'est le fait d'ouvrir comme ça Frm_decomposer :
Dim form2 As new Frm_decomposer form2.ShowDialog
qui fait que, quand je ferme form2 , avec me.close() il n'y a plus rien en mémoire ?
Je ne sais pas ce que fait exactement Frm_decomposer.Show Frm_decomposer est une classe et Show est, d'après la doc, une méthode d'instance (non déclarée en Shared).
Donc, je déclare une instance de Frm_decomposer, je la crée et quand je sors de la procédure, elle est «perdue» (en fait le GC récupèrera la mémoire quand il en aura besoin).
Je suppose que l'écriture Frm_decomposer.Show est une facilité syntaxique reprise du vb6. Et que l'instance créée automatiquement dans ce cas est mémorisée par le framework d'application vb. D'où sa réapparition au Show suivant (?)
PS : ne commence pas tes messages avec un délimiteur de signature (deux tirets et un espace)
Ah bon pourquoi ?!!
Parce que bon nombre de lecteurs de news enlèvent automatiquement la signature lors de la réponse ! Donc, il faut, soit en changer le paramétrage, soit faire du copier-coller pour te répondre en citant ton post.
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Dans : news:462f10ff$0$27378$ba4acef3@news.orange.fr,
Pascal disait :
bonjour
c'est le fait d'ouvrir comme ça Frm_decomposer :
Dim form2 As new Frm_decomposer
form2.ShowDialog
qui fait que, quand je ferme form2 , avec me.close() il n'y a plus
rien en mémoire ?
Je ne sais pas ce que fait exactement Frm_decomposer.Show
Frm_decomposer est une classe et Show est, d'après la doc, une méthode
d'instance (non déclarée en Shared).
Donc, je déclare une instance de Frm_decomposer, je la crée et quand je
sors de la procédure, elle est «perdue» (en fait le GC récupèrera la
mémoire quand il en aura besoin).
Je suppose que l'écriture Frm_decomposer.Show est une facilité
syntaxique reprise du vb6. Et que l'instance créée automatiquement dans
ce cas est mémorisée par le framework d'application vb. D'où sa
réapparition au Show suivant (?)
PS : ne commence pas tes messages avec un délimiteur de signature
(deux tirets et un espace)
Ah bon pourquoi ?!!
Parce que bon nombre de lecteurs de news enlèvent automatiquement la
signature lors de la réponse !
Donc, il faut, soit en changer le paramétrage, soit faire du
copier-coller pour te répondre en citant ton post.
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
bonjour c'est le fait d'ouvrir comme ça Frm_decomposer :
Dim form2 As new Frm_decomposer form2.ShowDialog
qui fait que, quand je ferme form2 , avec me.close() il n'y a plus rien en mémoire ?
Je ne sais pas ce que fait exactement Frm_decomposer.Show Frm_decomposer est une classe et Show est, d'après la doc, une méthode d'instance (non déclarée en Shared).
Donc, je déclare une instance de Frm_decomposer, je la crée et quand je sors de la procédure, elle est «perdue» (en fait le GC récupèrera la mémoire quand il en aura besoin).
Je suppose que l'écriture Frm_decomposer.Show est une facilité syntaxique reprise du vb6. Et que l'instance créée automatiquement dans ce cas est mémorisée par le framework d'application vb. D'où sa réapparition au Show suivant (?)
PS : ne commence pas tes messages avec un délimiteur de signature (deux tirets et un espace)
Ah bon pourquoi ?!!
Parce que bon nombre de lecteurs de news enlèvent automatiquement la signature lors de la réponse ! Donc, il faut, soit en changer le paramétrage, soit faire du copier-coller pour te répondre en citant ton post.
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Bill2
Fred wrote:
Dans : news:462f10ff$0$27378$, Pascal disait :
bonjour c'est le fait d'ouvrir comme ça Frm_decomposer :
Dim form2 As new Frm_decomposer form2.ShowDialog
qui fait que, quand je ferme form2 , avec me.close() il n'y a plus rien en mémoire ?
Je ne sais pas ce que fait exactement Frm_decomposer.Show Frm_decomposer est une classe et Show est, d'après la doc, une méthode d'instance (non déclarée en Shared).
Donc, je déclare une instance de Frm_decomposer, je la crée et quand je sors de la procédure, elle est «perdue» (en fait le GC récupèrera la mémoire quand il en aura besoin).
Je suppose que l'écriture Frm_decomposer.Show est une facilité syntaxique reprise du vb6. Et que l'instance créée automatiquement dans ce cas est mémorisée par le framework d'application vb. D'où sa réapparition au Show suivant (?)
euh ... si tu as une form FenetreA, et que tu fais FenetreA.show, effectivement, tu vas retrouver les infos.
Maintenant, si tu fais dim B as FenetreA=New FenetreA B.show
là, tu auras une fenetre différentes à chaque fois
et pour bien libérer la mémoire :
Private Sub FenetreA_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed Me.Dispose(True) End Sub -- Bill2
Fred wrote:
Dans : news:462f10ff$0$27378$ba4acef3@news.orange.fr,
Pascal disait :
bonjour
c'est le fait d'ouvrir comme ça Frm_decomposer :
Dim form2 As new Frm_decomposer
form2.ShowDialog
qui fait que, quand je ferme form2 , avec me.close() il n'y a plus
rien en mémoire ?
Je ne sais pas ce que fait exactement Frm_decomposer.Show
Frm_decomposer est une classe et Show est, d'après la doc, une méthode
d'instance (non déclarée en Shared).
Donc, je déclare une instance de Frm_decomposer, je la crée et quand
je sors de la procédure, elle est «perdue» (en fait le GC récupèrera
la mémoire quand il en aura besoin).
Je suppose que l'écriture Frm_decomposer.Show est une facilité
syntaxique reprise du vb6. Et que l'instance créée automatiquement
dans ce cas est mémorisée par le framework d'application vb. D'où sa
réapparition au Show suivant (?)
euh ... si tu as une form FenetreA, et que tu fais FenetreA.show,
effectivement, tu vas retrouver les infos.
Maintenant, si tu fais
dim B as FenetreA=New FenetreA
B.show
là, tu auras une fenetre différentes à chaque fois
et pour bien libérer la mémoire :
Private Sub FenetreA_FormClosed(ByVal sender As System.Object, ByVal e
As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed
Me.Dispose(True)
End Sub
--
Bill2
bonjour c'est le fait d'ouvrir comme ça Frm_decomposer :
Dim form2 As new Frm_decomposer form2.ShowDialog
qui fait que, quand je ferme form2 , avec me.close() il n'y a plus rien en mémoire ?
Je ne sais pas ce que fait exactement Frm_decomposer.Show Frm_decomposer est une classe et Show est, d'après la doc, une méthode d'instance (non déclarée en Shared).
Donc, je déclare une instance de Frm_decomposer, je la crée et quand je sors de la procédure, elle est «perdue» (en fait le GC récupèrera la mémoire quand il en aura besoin).
Je suppose que l'écriture Frm_decomposer.Show est une facilité syntaxique reprise du vb6. Et que l'instance créée automatiquement dans ce cas est mémorisée par le framework d'application vb. D'où sa réapparition au Show suivant (?)
euh ... si tu as une form FenetreA, et que tu fais FenetreA.show, effectivement, tu vas retrouver les infos.
Maintenant, si tu fais dim B as FenetreA=New FenetreA B.show
là, tu auras une fenetre différentes à chaque fois
et pour bien libérer la mémoire :
Private Sub FenetreA_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed Me.Dispose(True) End Sub -- Bill2
Fred
Dans : news:, Bill2 disait :
Fred wrote:
Dim form2 As new Frm_decomposer form2.ShowDialog
euh ... si tu as une form FenetreA, et que tu fais FenetreA.show, effectivement, tu vas retrouver les infos.
Maintenant, si tu fais dim B as FenetreA=New FenetreA B.show
là, tu auras une fenetre différentes à chaque fois
Oui.
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Dans : news:O2DMFyzhHHA.4520@TK2MSFTNGP02.phx.gbl,
Bill2 disait :
Fred wrote:
Dim form2 As new Frm_decomposer
form2.ShowDialog
euh ... si tu as une form FenetreA, et que tu fais FenetreA.show,
effectivement, tu vas retrouver les infos.
Maintenant, si tu fais
dim B as FenetreA=New FenetreA
B.show
là, tu auras une fenetre différentes à chaque fois
Oui.
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Merci pour ce sujet, je ne savait pas comment garder les infos. :-)) décidément, ce forum est très instructif. Merci. JM
Fred a écrit :
Dans : news:, Bill2 disait :
Fred wrote:
Dim form2 As new Frm_decomposer form2.ShowDialog
euh ... si tu as une form FenetreA, et que tu fais FenetreA.show, effectivement, tu vas retrouver les infos.
Maintenant, si tu fais dim B as FenetreA=New FenetreA B.show
là, tu auras une fenetre différentes à chaque fois
Oui.
Fred
Dans : news:%, djmcg disait :
Merci pour ce sujet, je ne savait pas comment garder les infos. :-)) décidément, ce forum est très instructif.
Salut JM,
Je te conseille tout de même, en complément, de lire la doc MSDN. Cela précise les approximations (que je fais souvent aussi pour aller plus rapidement au but).
Exemple, ces paragraphes issus de l'aide sur la méthode Close (en anglais chez moi)
<copie> When a form is closed, all resources created within the object are closed and the form is disposed. ... The one condition when a form is not disposed on Close is when it is part of a multiple-document interface (MDI) application, and the form is not visible. </copie>
Mais visiblement, cela ne correspond pas exactement à ce qu'a constaté Pascal. Je pense que c'est dû à l'utilisation du framework vb.NET (nous en avons déjà parlé ensemble).
Un projet vb utilise en particulier la classe MyProject, qui contient les propriétés partagées (Shared) : Application de type MyApplication, Computer de type MyComputer, Forms de type MyForms, User de type MyUser et WebServices de type MyWebServices
Tout cela étant accessible via le mot clé/espace de nom My (My.Computer, My.Forms, etc ...) Dans la classe MyForms, sont ajoutées automatiquement une propriété par Form créée dans le projet. ex : si tu crées deux classes Fom1 et Form2, la classe MyForms aura une propriété Form1 de type Form1 et une propriété Form2 de type Form2.
Lorqu'on appelle : My.Forms.Form1, la classe MyForms crée une instance de Form1 (lors du premier appel) et la renvoie.
L'espace de nom My.Forms étant inclu par défaut, My.Forms.Form1 est donc équivalent à Form1. D'où mon interrogation dans un post précédent.
L'écriture Form1.Show ne fait pas appel à une méthode partagée de la classe Form1, mais bien à la méthode Show de l'instance Form1 (en tant que propriété de My.Forms cette fois ci).
Ces instances créées automatiquement lors de leur premier appel sont conservées. D'où leur réapparition lors d'un second appel.
Ce que je n'ai pas déterminé, c'est où le Close ou le Dispose sont interceptés pour que le Dispose ne soit pas fait.
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Dans : news:%23VLNDm1hHHA.392@TK2MSFTNGP06.phx.gbl,
djmcg disait :
Merci pour ce sujet, je ne savait pas comment garder les infos.
:-))
décidément, ce forum est très instructif.
Salut JM,
Je te conseille tout de même, en complément, de lire la doc MSDN.
Cela précise les approximations (que je fais souvent aussi pour aller
plus rapidement au but).
Exemple, ces paragraphes issus de l'aide sur la méthode Close (en
anglais chez moi)
<copie>
When a form is closed, all resources created within the object are
closed and the form is disposed.
...
The one condition when a form is not disposed on Close is when it is
part of a multiple-document interface (MDI) application, and the form is
not visible.
</copie>
Mais visiblement, cela ne correspond pas exactement à ce qu'a constaté
Pascal.
Je pense que c'est dû à l'utilisation du framework vb.NET (nous en avons
déjà parlé ensemble).
Un projet vb utilise en particulier la classe MyProject, qui contient
les propriétés partagées (Shared) :
Application de type MyApplication,
Computer de type MyComputer,
Forms de type MyForms,
User de type MyUser
et WebServices de type MyWebServices
Tout cela étant accessible via le mot clé/espace de nom My (My.Computer,
My.Forms, etc ...)
Dans la classe MyForms, sont ajoutées automatiquement une propriété par
Form créée dans le projet.
ex : si tu crées deux classes Fom1 et Form2, la classe MyForms aura une
propriété Form1 de type Form1 et une propriété Form2 de type Form2.
Lorqu'on appelle : My.Forms.Form1, la classe MyForms crée une instance
de Form1 (lors du premier appel) et la renvoie.
L'espace de nom My.Forms étant inclu par défaut, My.Forms.Form1 est donc
équivalent à Form1. D'où mon interrogation dans un post précédent.
L'écriture Form1.Show ne fait pas appel à une méthode partagée de la
classe Form1, mais bien à la méthode Show de l'instance Form1 (en tant
que propriété de My.Forms cette fois ci).
Ces instances créées automatiquement lors de leur premier appel sont
conservées. D'où leur réapparition lors d'un second appel.
Ce que je n'ai pas déterminé, c'est où le Close ou le Dispose sont
interceptés pour que le Dispose ne soit pas fait.
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Merci pour ce sujet, je ne savait pas comment garder les infos. :-)) décidément, ce forum est très instructif.
Salut JM,
Je te conseille tout de même, en complément, de lire la doc MSDN. Cela précise les approximations (que je fais souvent aussi pour aller plus rapidement au but).
Exemple, ces paragraphes issus de l'aide sur la méthode Close (en anglais chez moi)
<copie> When a form is closed, all resources created within the object are closed and the form is disposed. ... The one condition when a form is not disposed on Close is when it is part of a multiple-document interface (MDI) application, and the form is not visible. </copie>
Mais visiblement, cela ne correspond pas exactement à ce qu'a constaté Pascal. Je pense que c'est dû à l'utilisation du framework vb.NET (nous en avons déjà parlé ensemble).
Un projet vb utilise en particulier la classe MyProject, qui contient les propriétés partagées (Shared) : Application de type MyApplication, Computer de type MyComputer, Forms de type MyForms, User de type MyUser et WebServices de type MyWebServices
Tout cela étant accessible via le mot clé/espace de nom My (My.Computer, My.Forms, etc ...) Dans la classe MyForms, sont ajoutées automatiquement une propriété par Form créée dans le projet. ex : si tu crées deux classes Fom1 et Form2, la classe MyForms aura une propriété Form1 de type Form1 et une propriété Form2 de type Form2.
Lorqu'on appelle : My.Forms.Form1, la classe MyForms crée une instance de Form1 (lors du premier appel) et la renvoie.
L'espace de nom My.Forms étant inclu par défaut, My.Forms.Form1 est donc équivalent à Form1. D'où mon interrogation dans un post précédent.
L'écriture Form1.Show ne fait pas appel à une méthode partagée de la classe Form1, mais bien à la méthode Show de l'instance Form1 (en tant que propriété de My.Forms cette fois ci).
Ces instances créées automatiquement lors de leur premier appel sont conservées. D'où leur réapparition lors d'un second appel.
Ce que je n'ai pas déterminé, c'est où le Close ou le Dispose sont interceptés pour que le Dispose ne soit pas fait.
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
djmcg
Merci fred. Je doit bien avouer que j'ai un peux de mal avec le msdn. Soit je fait mal mes recherches ou soit je ne suit pas très doué, ce qui est tout à fait possible :-) (la programmation, ce n'est pas mon métier"). J'ai aussi besoin avec la théorie d'exemple pour comprendre et le msdn donne souvent en anglais. Maintenant, j'utilise a font le site de monsieur lasserre et je me suit acheter deux livre dont le manuel de référence. Je me suit débarrassé de la doc de vb6 et j'essaye d'oublier la programmation en QuickBasic que j'ai utilisé énormément. Dorénavant je poserais mes questions uniquement quand je serais bloqué parce-que l'idée, piste ou exemple m'aide a relancé ma recherche de manière plus "logique". Il faut dire que j'avance bien mon premier module commence a prendre form(e). Voila ce "petit" mot comme prétexte pour dire MERCI A TOUS. Jean-Marie
Fred a écrit :
Dans : news:%, djmcg disait :
Merci pour ce sujet, je ne savait pas comment garder les infos. :-)) décidément, ce forum est très instructif.
Salut JM,
Je te conseille tout de même, en complément, de lire la doc MSDN. Cela précise les approximations (que je fais souvent aussi pour aller plus rapidement au but).
Exemple, ces paragraphes issus de l'aide sur la méthode Close (en anglais chez moi)
<copie> When a form is closed, all resources created within the object are closed and the form is disposed. ... The one condition when a form is not disposed on Close is when it is part of a multiple-document interface (MDI) application, and the form is not visible. </copie>
Mais visiblement, cela ne correspond pas exactement à ce qu'a constaté Pascal. Je pense que c'est dû à l'utilisation du framework vb.NET (nous en avons déjà parlé ensemble).
Un projet vb utilise en particulier la classe MyProject, qui contient les propriétés partagées (Shared) : Application de type MyApplication, Computer de type MyComputer, Forms de type MyForms, User de type MyUser et WebServices de type MyWebServices
Tout cela étant accessible via le mot clé/espace de nom My (My.Computer, My.Forms, etc ...) Dans la classe MyForms, sont ajoutées automatiquement une propriété par Form créée dans le projet. ex : si tu crées deux classes Fom1 et Form2, la classe MyForms aura une propriété Form1 de type Form1 et une propriété Form2 de type Form2.
Lorqu'on appelle : My.Forms.Form1, la classe MyForms crée une instance de Form1 (lors du premier appel) et la renvoie.
L'espace de nom My.Forms étant inclu par défaut, My.Forms.Form1 est donc équivalent à Form1. D'où mon interrogation dans un post précédent.
L'écriture Form1.Show ne fait pas appel à une méthode partagée de la classe Form1, mais bien à la méthode Show de l'instance Form1 (en tant que propriété de My.Forms cette fois ci).
Ces instances créées automatiquement lors de leur premier appel sont conservées. D'où leur réapparition lors d'un second appel.
Ce que je n'ai pas déterminé, c'est où le Close ou le Dispose sont interceptés pour que le Dispose ne soit pas fait.
Merci fred.
Je doit bien avouer que j'ai un peux de mal avec le msdn.
Soit je fait mal mes recherches ou soit je ne suit pas très doué, ce qui
est tout à fait possible :-) (la programmation, ce n'est pas mon métier").
J'ai aussi besoin avec la théorie d'exemple pour comprendre et le msdn
donne souvent en anglais.
Maintenant, j'utilise a font le site de monsieur lasserre et je me suit
acheter deux livre dont le manuel de référence. Je me suit débarrassé de
la doc de vb6 et j'essaye d'oublier la programmation en QuickBasic que
j'ai utilisé énormément. Dorénavant je poserais mes questions uniquement
quand je serais bloqué parce-que l'idée, piste ou exemple m'aide a
relancé ma recherche de manière plus "logique". Il faut dire que
j'avance bien mon premier module commence a prendre form(e).
Voila ce "petit" mot comme prétexte pour dire MERCI A TOUS.
Jean-Marie
Fred a écrit :
Dans : news:%23VLNDm1hHHA.392@TK2MSFTNGP06.phx.gbl,
djmcg disait :
Merci pour ce sujet, je ne savait pas comment garder les infos.
:-))
décidément, ce forum est très instructif.
Salut JM,
Je te conseille tout de même, en complément, de lire la doc MSDN.
Cela précise les approximations (que je fais souvent aussi pour aller
plus rapidement au but).
Exemple, ces paragraphes issus de l'aide sur la méthode Close (en
anglais chez moi)
<copie>
When a form is closed, all resources created within the object are
closed and the form is disposed.
...
The one condition when a form is not disposed on Close is when it is
part of a multiple-document interface (MDI) application, and the form is
not visible.
</copie>
Mais visiblement, cela ne correspond pas exactement à ce qu'a constaté
Pascal.
Je pense que c'est dû à l'utilisation du framework vb.NET (nous en avons
déjà parlé ensemble).
Un projet vb utilise en particulier la classe MyProject, qui contient
les propriétés partagées (Shared) :
Application de type MyApplication,
Computer de type MyComputer,
Forms de type MyForms,
User de type MyUser
et WebServices de type MyWebServices
Tout cela étant accessible via le mot clé/espace de nom My (My.Computer,
My.Forms, etc ...)
Dans la classe MyForms, sont ajoutées automatiquement une propriété par
Form créée dans le projet.
ex : si tu crées deux classes Fom1 et Form2, la classe MyForms aura une
propriété Form1 de type Form1 et une propriété Form2 de type Form2.
Lorqu'on appelle : My.Forms.Form1, la classe MyForms crée une instance
de Form1 (lors du premier appel) et la renvoie.
L'espace de nom My.Forms étant inclu par défaut, My.Forms.Form1 est donc
équivalent à Form1. D'où mon interrogation dans un post précédent.
L'écriture Form1.Show ne fait pas appel à une méthode partagée de la
classe Form1, mais bien à la méthode Show de l'instance Form1 (en tant
que propriété de My.Forms cette fois ci).
Ces instances créées automatiquement lors de leur premier appel sont
conservées. D'où leur réapparition lors d'un second appel.
Ce que je n'ai pas déterminé, c'est où le Close ou le Dispose sont
interceptés pour que le Dispose ne soit pas fait.
Merci fred. Je doit bien avouer que j'ai un peux de mal avec le msdn. Soit je fait mal mes recherches ou soit je ne suit pas très doué, ce qui est tout à fait possible :-) (la programmation, ce n'est pas mon métier"). J'ai aussi besoin avec la théorie d'exemple pour comprendre et le msdn donne souvent en anglais. Maintenant, j'utilise a font le site de monsieur lasserre et je me suit acheter deux livre dont le manuel de référence. Je me suit débarrassé de la doc de vb6 et j'essaye d'oublier la programmation en QuickBasic que j'ai utilisé énormément. Dorénavant je poserais mes questions uniquement quand je serais bloqué parce-que l'idée, piste ou exemple m'aide a relancé ma recherche de manière plus "logique". Il faut dire que j'avance bien mon premier module commence a prendre form(e). Voila ce "petit" mot comme prétexte pour dire MERCI A TOUS. Jean-Marie
Fred a écrit :
Dans : news:%, djmcg disait :
Merci pour ce sujet, je ne savait pas comment garder les infos. :-)) décidément, ce forum est très instructif.
Salut JM,
Je te conseille tout de même, en complément, de lire la doc MSDN. Cela précise les approximations (que je fais souvent aussi pour aller plus rapidement au but).
Exemple, ces paragraphes issus de l'aide sur la méthode Close (en anglais chez moi)
<copie> When a form is closed, all resources created within the object are closed and the form is disposed. ... The one condition when a form is not disposed on Close is when it is part of a multiple-document interface (MDI) application, and the form is not visible. </copie>
Mais visiblement, cela ne correspond pas exactement à ce qu'a constaté Pascal. Je pense que c'est dû à l'utilisation du framework vb.NET (nous en avons déjà parlé ensemble).
Un projet vb utilise en particulier la classe MyProject, qui contient les propriétés partagées (Shared) : Application de type MyApplication, Computer de type MyComputer, Forms de type MyForms, User de type MyUser et WebServices de type MyWebServices
Tout cela étant accessible via le mot clé/espace de nom My (My.Computer, My.Forms, etc ...) Dans la classe MyForms, sont ajoutées automatiquement une propriété par Form créée dans le projet. ex : si tu crées deux classes Fom1 et Form2, la classe MyForms aura une propriété Form1 de type Form1 et une propriété Form2 de type Form2.
Lorqu'on appelle : My.Forms.Form1, la classe MyForms crée une instance de Form1 (lors du premier appel) et la renvoie.
L'espace de nom My.Forms étant inclu par défaut, My.Forms.Form1 est donc équivalent à Form1. D'où mon interrogation dans un post précédent.
L'écriture Form1.Show ne fait pas appel à une méthode partagée de la classe Form1, mais bien à la méthode Show de l'instance Form1 (en tant que propriété de My.Forms cette fois ci).
Ces instances créées automatiquement lors de leur premier appel sont conservées. D'où leur réapparition lors d'un second appel.
Ce que je n'ai pas déterminé, c'est où le Close ou le Dispose sont interceptés pour que le Dispose ne soit pas fait.
Fred
Dans : news:, djmcg écrivait :
Merci fred. Je doit bien avouer que j'ai un peux de mal avec le msdn.
Je crois qu'il y a la version française de la MSDN là dedans. http://www.microsoft.com/downloads/details.aspx?displaylang=fr&FamilyIDþ6f2099-b7b4-4f47-a244-c96d69c35dec
Je n'en suis hélas pas très sûr :-(
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Dans : news:ewRe5DKiHHA.4976@TK2MSFTNGP03.phx.gbl,
djmcg écrivait :
Merci fred.
Je doit bien avouer que j'ai un peux de mal avec le msdn.
Je crois qu'il y a la version française de la MSDN là dedans.
http://www.microsoft.com/downloads/details.aspx?displaylang=fr&FamilyIDþ6f2099-b7b4-4f47-a244-c96d69c35dec
Je n'en suis hélas pas très sûr :-(
--
Fred
http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)
Merci fred. Je doit bien avouer que j'ai un peux de mal avec le msdn.
Je crois qu'il y a la version française de la MSDN là dedans. http://www.microsoft.com/downloads/details.aspx?displaylang=fr&FamilyIDþ6f2099-b7b4-4f47-a244-c96d69c35dec
Je n'en suis hélas pas très sûr :-(
-- Fred http://www.cerber mail.com/?3kA6ftaCvT (enlever l'espace)