narfight
Messages postés129Date d'inscriptionlundi 17 mars 2003StatutMembreDernière intervention 4 mars 2010
-
26 févr. 2008 à 10:18
narfight
Messages postés129Date d'inscriptionlundi 17 mars 2003StatutMembreDernière intervention 4 mars 2010
-
26 févr. 2008 à 11:38
Bonjour,
Je suis dans un petit problème :
J’ai une fenêtre qui va appeler différente
classe (communication, générateur de fichier XML, Gestion des I/O). Je considère
que la fenêtre qui crée les classes est la class Père du projet et les classes
qu’il crée sont les fils.
Pouvez-vous me dire comment un fils peut
lire/modifier des variables qui ont été crée par le Père ?
NHenry
Messages postés15102Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention27 mars 2024159 26 févr. 2008 à 11:31
Bonjour
Pour ta solution avec ton main :
- Evite d'appeler ton formulaire "main" préfère plutot "FrmMain", cela évitera les confusions.
- Utilises un Module dans lequel tu déclare toutes la variables en Public, comme cela, pas de nouveau formulaire ouvert.
Sinon pour la technique avec les constructeur :
Dans la classe mère :
Dim lObj as MonObjet=neew MonObjet(.... , Me)
Et dans le constructeur :
private mParent as MonParent=Nothing
Public Sub New(... , byval pParent as MonParent)
...
mParent=pParent
...
End sub
et pour l'utilisation :
If mParent isnot nothing Then 'Controle pour éviter les exceptions NullReferenceException
mParent.x=y
End if
Dans Word, j'Excel. (juste pour la citation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
NHenry
Messages postés15102Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention27 mars 2024159 26 févr. 2008 à 10:35
Bonjour
Faire référence à leurs père (ou à leur classe mère, toute une affaire de famille tout ça ), Dans le constructeur des classes, met à dispo un paramètre qui permet de définir le père (ou la mère).
Dans Word, j'Excel. (juste pour la citation)
VB (6, .NET1&2), C++, C#.Net1
Mon site
narfight
Messages postés129Date d'inscriptionlundi 17 mars 2003StatutMembreDernière intervention 4 mars 2010 26 févr. 2008 à 11:22
Autant pour moi, ça marche pas. Il quand je veux aller lire dans Main la variable Test par exemple, je fais actuellement ainsi : Main.Test. En réalité, il essays de relancer une nouvelle form Main.
Peux-tu me donner plus de détails sur ta méthode avec le constructeur ?