>>>>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
_screen.txt = null
Gregory