POO et Variables publiques

Résolu
Signaler
Messages postés
42
Date d'inscription
dimanche 20 février 2011
Statut
Membre
Dernière intervention
1 avril 2018
-
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
-
Bonsoir a tous
Je débute en POO. Je souhaite réaliser un programme de gestion d'une auto-école
J'ai plusieurs formes dont une forme accueil.
J'ai recupérer dans le load de celle-ci mes données venant de la BDD et créer une collection d'Eleve et une collection de Moniteur. Je voudrais que ces collection soiy  accessible partout dans mon projet (dans toutes mes formes).
Mais je n'arrive pas à créer une variable ou collection accessible partout.
J'ai essayer de déclarer par example Public unEleve as new Eleve mais je n'ai accès à cette variable que dans la forme ou je l'ai déclarée.
Je débute en POO alors je ne sais pas trop comment m'y prendre, peut etre qu'il faut que je fasse autrement, j'atttend vos conseil
Merci d'avance
Voici mes deux tables :

Voici mes deux classes :

Public Class Eleve
    Public numero As Integer
    Public nom As String
    Public prenom As String
    Public dateNaissance As Date
End Class

Public Class Moniteur
    Public numero As Integer
    Public nom As String
    Public prenom As String
End Class

5 réponses

Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Tu rajoute un module dans ton projet.

Dans ce module, tu y met les déclarations de tes variables que tu souhaite être globale :
Public unEleve as Eleve

Ensuite quelque part dans le code, à priori dans le Form Load d'àprès ce que tu dis, tu instancie tes variables puis tu les initialises :

unEleve = New Eleve
unEleve.numero = .......
unEleve.nom = ........
..........

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
42
Date d'inscription
dimanche 20 février 2011
Statut
Membre
Dernière intervention
1 avril 2018

Merci pour la réponse, ça fonctionne !
Je voulais savoir si c'est une bonne façon de faire comme cela.
Et quelle type de list me conseillez-vous pour instancier mes Eleves et Moniteurs
Merci
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Personnellement je suis contre les variables globales et ne les utilisent que vraiment lorsque je n'ai pas le choix.

Et pour la liste, un tableau ou une liste devrait faire l'affaire.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
Messages postés
42
Date d'inscription
dimanche 20 février 2011
Statut
Membre
Dernière intervention
1 avril 2018

ok
Si tu n'utilise pas les variables globale, quelle sont les autres alternatives ?
merci
Messages postés
7741
Date d'inscription
mercredi 1 septembre 2004
Statut
Membre
Dernière intervention
24 septembre 2014
41
Classes, propriétés, fonctions avec passage de paramètre, ...... dans environ 80% des cas j'arrive toujours à me débrouiller. Cela nécessite parfois de revoir l'architecture d'une partie de programme.

Je limite les variables globales au strict minimum, quand j'ai pas le choix ou lorsque j'en ai besoin dans tout le programme.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php