TControl.Show; orTControl.Visible:=True;Sometimes Top/Left/Right/Bottom can get values (perhaps negative or too greatly positive) that place the control outside the visible area of their parenting form. So it is worth doing a sanity check on those values. This is generally not a problem, but if you have a multi-monitor setup it is easy to inadvertently give a control bounds that make it invisible when the form is reopened later on a different machine such as a laptop.
You might have hidden it behind a panel or something.You could try the following:Click the TVirtualStringTree in the object insprectorRicht click on TVirtualStringTreeChoose Z-Order and then "Move to Front"Is your TVirtualStringTree now visible. If so, you need to rearange some things or make sure TVirtualStringTree is a subcomponent of the panel under which it was hidden.If it is still not visible you could check the Left and Top values in the object inspector for that TVirtualStringTree. Set them to 0 and try above again.