Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Can I create a new object from an object on a form?
Message
 
 
General information
Forum:
Visual FoxPro
Category:
Other
Environment versions
Visual FoxPro:
VFP 8 SP1
Miscellaneous
Thread ID:
01054004
Message ID:
01054085
Views:
21
>I have made two slight modifications (debugging it). For testing I put it in the Click() of a checkbox, named myFirstObject. It works nicely, but indeed the methods and events are not copied.
>
local lcClass, lcClasslib, lnI, luValue
>lcClass = thisform.myFirstObject.class
>lcClassLib = thisform.myFirstObject.classlibrary
>* Create a new object of the same class
>thisform.NewObject("mySecondObject",m.lcClass,m.lcClassLib)
>=amembers(laProps,thisform.myFirstObject)
>for lnI=1 to alen(laProps)
>    if not inlist(lower(laProps[m.lnI]),'class','classlib','top','left','name')
>    try
>       luValue = getpem(thisform.myFirstObject, laProps[m.lnI])
>       store m.luValue to ("thisform.mySecondObject." + laProps[m.lnI])
>    catch
>      =Messagebox(laProps[lnI]+" property is read-only")
>    endtry
>   endif
>next
>
>
So, it worked?! Great. In the inlist we need to change classlib to classlibrary then..

With aMembers we can get events and properties. If we can get everything when we can write a script for creating a class, then instantiate an object of that class. So, it's possible, but as I said, it's more work involved, so I leave the exercise to the thread's originator.
If it's not broken, fix it until it is.


My Blog
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform