2009-06-30 5 views
0

J'ai une forme régulière appelée "Poisson". Il a un TreeCtl appelé "loctree" que j'ai utilisé comme un sélecteur de lieu pour changer un champ dans Fish.Access 2003 VBA: problème de propriété de formulaire personnalisé

J'ai depuis ajouté plusieurs sous-formulaires à Fish. Deux d'entre eux ont des champs de localisation que je voudrais utiliser loctree pour. Comme je ne voulais pas instancier un nouvel arbre TreeCtl pour chacun de ces sous-formulaires, j'ai pensé que je pouvais juste laisser savoir à loctree quel est le contrôle de sa cible actuelle. Je pensais que la meilleure façon de définir la cible actuelle serait d'ajouter une propriété à ma forme de poisson:

Option Compare Database 

Private locfield As Field 

Property Let loc_focusField(target As Field) 
    locfield = target 
End Property 

Property Get loc_focusField() 
    loc_focusField = locfield 
End Property 

Et puis dans l'événement Open pour la forme de poisson, je pourrais définir la valeur par défaut de locfield:

Private Sub Form_Open(Cancel As Integer) 
    locfield = Forms!fish_moves!fish_moves_loc_id 
End Sub 

Malheureusement, chaque fois que je tente d'ouvrir ma forme, je reçois l'erreur suivante:

Definitions of property procedures for the same property are inconsistent, or property procedure has an optional parameter, a ParamArray, or an invalid Set final parameter

Alors qu'est-ce qui se passe?

Merci, Jen

Répondre

3

IIRC, vos propriétés devraient ressembler à

Property Set loc_focusField(target As Field) 
    set locfield = target 
End Property 

Property Get loc_focusField() as Field 
    set loc_focusField = locfield 
End Property 

Est-ce que le travail?

Questions connexes