Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Releasing objects added to the screen
Message
From
06/02/2012 04:23:06
 
General information
Forum:
Visual FoxPro
Category:
Classes - VCX
Environment versions
Visual FoxPro:
VFP 9
OS:
Windows 7
Network:
Windows 2003 Server
Database:
Visual FoxPro
Application:
Desktop
Miscellaneous
Thread ID:
01534450
Message ID:
01534511
Views:
86
>>>>I have created an object that I place on the screen... ie I use _screen.addobject
>>>>How do I get the object to release. I know clear all works, but that is kind of drastic, don't you think?
>>>>
>>>Setting the object to null will release it
>>
>>You can't set a control hosted on a form (in this case _screen) to .null., you must use the .RemoveObject() method.
>
>Oops !, I thought setting an object to null *released* it - haven't used Fox for a while now so am a bit rusty. If the object in question was a non visual one ( I.e not a control ) would my suggestion work then ? Thanks for correcting me.

Pete,

Visual or not visual is not the issue

If you use AddObject(), you have to use RemoveObject() since the object is part of a collection, eg thisform.Controls()

If you use CreateObject() and then assign that reference to a property of another object, setting the property back to null will release the object - provided it is not referenced anywhere else

eg
=_screen.AddProperty('txt', createobject('TextBox'))
?_screen.txt.name && Text
_screen.txt = null  && releases the object
Gregory
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform