Following on from that, does that mean the frames are components of the tabsheets, and the memos are components of the frames, and can be found by referencing the owners?
I think you're falling in the (rather common) error of mistaking the
Owner, which is the component responsible for the "life" and eventual "death" of a control, with the
Parent, which is the control inside which another control is shown.
For almost all controls created at design-time the Owner will be the form itself, so if you mix design- and run-time created controls, you should do the the same (for the run-time created) that the IDE does: make of the form their
Owner and set the
Parent as needed.
Of course, if all the tabsheets and their contents are created at run-time this doesn't matter so much and you can make whatever control you want the Owner. The problem then is that to look for a control in the list of
all components you have to start from the form's Components and for each descend to
its Components until you find the one you're looking for.
Anyway, a simple way of ascertaining how the tree of controls/components is build by the IDE (including frames, etc) is to build a small project with the needed components, add a function that traverses the full tree and show the result (component class + name, owner class + name, paret class + name) in a memo, message dialog, or whatever, or save it to a text file.
At leasst that's what I do whenever a doubt arises
HTH