|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : mars 2006 Messages : 3 ![]() |
Bonjour,
J'ai une base A contenant des modules de classe (par ex.: un module clsTest) et d'autres modules. Lorsque dans une autre base, j'établis une référence vers la base A, je vois et j'ai accès aux modules normaux mais pas aux classes. par exemple, impossible de faire dim o as clsTest et/ou set o = new clsTest. De même, l'explorateur d'objet montre bien la base référencée avec les modules normaux mais pas les modules de classe. Est-il possible d'utiliser une classe définie dans une autre base ? comment ? merci pour toute piste. |
|
|
00
|
|
|
#2 | |
|
En attente de confirmation mail
Inscription : février 2005 Messages : 1 731 ![]() |
Bonjour,
Citation:
Dans l'EDI VBA, tu sélectionnes la classe et, dans la fenêtre des propriétés, tu modifies la propriété [Instancing] avec la valeur [2. PublicNotCreatable] Access permet de choisir entre les portées [Private] Ou [Public not creatable]. [Public not creatable] signifie que les instances de la classe peuvent être utilisées par n'importe quelle application Access qui référence ta base A, avec une grosse limitation: seul le code contenu dans base A est autorisé à instancier la classe (en clair, l'instruction New clsTest n'est pas valide en-dehors de base A). [2] Ensuite, pour tenir compte du [not creatable] tu dois ajouter dans base A une procédure publique chargée d'instancier clsTest et de retourner une référence sur le nouvel objet (dans la terminologie d'un "langage orienté objets" ça fait penser à un constructeur). C'est cette procédure publique qui sera ensuite appelée par le code de ta base application pour obtenir de nouvelles instances de clsTest. |
|
|
|
00
|
|
|
#3 | |||||||
|
Invité de passage
![]() Inscription : mars 2006 Messages : 3 ![]() |
Merci pour cette aide.
J'avance mais je trébuche maintenant sur la création de la procédure "constructeur" Citation:
Code :
Code :
Code :
Dans le premier cas l'erreur se produit dans la fonction "constructeur" lors de la tentative d'affectation de l'objet à la fonction pour retour. Je ne sais pas comment dans une procédure retourner la référence d'un objet créé par cette procédure. encore un tour d'aide et j'y arriverai ! merci |
|||||||
|
|
00
|
|
|
#4 | |||||
|
En attente de confirmation mail
Inscription : février 2005 Messages : 1 731 ![]() |
Tu es proche du but.
Citation:
Dans base application: Code :
Code :
|
|||||
|
|
00
|
|
|
#5 | |
|
Invité de passage
![]() Inscription : mars 2006 Messages : 3 ![]() |
Citation:
|
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com