Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Class does not see its parent
Message
 
 
À
16/02/2011 10:03:41
Information générale
Forum:
Visual FoxPro
Catégorie:
Classes - VCX
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows 7
Network:
Windows 2003 Server
Database:
MS SQL Server
Divers
Thread ID:
01500327
Message ID:
01500397
Vues:
52
>>>>>If the parents methods are not hidden or protected then you should be able to just this.oSomeObject.method() to see it. I don't think that this.oSomeObject would have a parent.
>>>>>
>>>>You misunderstood me. I need to invoke the main class method from oSomeObject class. I added a new property oParent to oSomeObject class and in the main class I did
>>>>
>>>>this.oSomeObject.oParent = this
>>>>
>>>>--------------
>>>>I'm testing it right now, but it looks very dangerous to me. I also added this.oParent = null in the Destroy method of the oSomeObject class.
>>>
>>>If you need the object tree, why don't you use ,Add/.Newobject, which put the new object in the tree -
>>>with backlink and no worry about hanging references when destroying ?
>>>
>>>puzzled
>>>
>>>thomas
>>
>>I'm now getting Property NEWOBJECT is not found. NEWOBJECT Error# 1734 Method:init Line: 569
>>
>>My class is defined as custom olepublic. Could it be a problem? (BTW, I already re-coded, so it would be funny to re-code back again).
>>
>>UPDATE. I take it back - the parent class is a session class. Does it mean I can not use NewObject method?
>>
>>UPDATE 2. Re-coded back again to use my original idea.
>
>A session is not a container class. You cannot add objects to it.
>
>You can pass its reference when you call functions of oSomeObject, ie
>
>=m.this.oSomeObject.SomeFunction(m.this)
>
I see. Hmm, should I re-code again now?

Yes, this sounds like a simpler approach again and since I only needed it in one particular method so far, may be it's a way to go.

Ok, what do you suggest - re-code the 4th time or leave what I have?

Also, would it be correct to pass this in the Init method of that 'child' class and save it as a reference and then keep the code I implemented?
If it's not broken, fix it until it is.


My Blog
Précédent
Suivant
Répondre
Fil
Voir

Click here to load this message in the networking platform