То, что вы ищете, - это возможность создать отношения родитель / ребенок.Родитель действует как контейнер, а потомок содержится в границах контейнера.TPanel
- классический пример контейнера.Любой визуальный компонент может быть дочерним.
С точки зрения родословной родитель должен быть производным от TWinControl
, а дочерний должен быть производным от TControl
.На практике вы редко наследуете эти классы напрямую, а не от одного из их потомков.Другой фактор, если я правильно помню, состоит в том, что родительский элемент управления должен включать csAcceptsControls
в его ControlStyle
.
Теперь TImage32
действительно происходит от TWinControl
итак что он может действовать как контейнер.Однако я не уверен, включен ли csAcceptsControls
в ControlStyle
для TImage32
.
Я действительно не знаком с TImage32
и не знаю,не может выступать в роли родителя.У меня есть подозрение, что он не предназначен для использования в качестве контейнера.Если это так, то вы можете добавить csAcceptsControls
к ControlStyle
в конструкторе вашего производного класса и использовать элемент управления в качестве родителя.
Я подозреваю, что если TImage32
не включает csAcceptsControls
, то это по замыслу и управление изображением не должно выступать в роли родителя.
Очевидно, TImage32
, в отличие от VCL TImage
, действительно способен выступать в роли родителя длядругие элементы управления.
Что касается другого элемента управления в вашем вопросе, TBitmap32
не является производным от TControl
и не может быть дочерним элементом управления.