I just did an experiment and made
Ttablewhere = class(tcomponet)
As you say owner shows up but there is an access violation crash when I try to use it like Showmessage (owner.name);
Show some more code.
You should use TWhatever.Create(owner).
Otherwise there is no owner and you can't do owner.name
If you want to do TWhatever.Create(nil) you need to check for a nil owner.
If owner <> nil then foo := owner.name.
But why do you need the owner.name?
It's better to show more code with what you want to do.
I have a feeling you are completing things a lot.