Jon,
The theory is that, if references to the child objects are declared in the
parent object, then when you destroy the parent object, the reference
variables go out of scope, and thus so do the references to the child
objects. By inference, this means the child objects will be destroyed.
All assuming, of course, that you don't have circular references, in which
case, all bets are off.
The best course of action is to create a public Dispose method in each
object class, which explicitly destroys any references the object may have
created, including circular ones. You can call the Dispose method from the
class's Terminate event.
Regards,
Graham R Seach
Microsoft Access MVP
Sydney, Australia
---------------------------