如何在创建自己的组件时在结构视图面板中隐藏设计时的子组件(hide <components [1]>)

时间:2018-05-06 16:42:50

标签: delphi

我正在创建从TControl(Firemonkey)继承的简单组件。 在构造函数中,我写道:

constructor TControl1.Create(AOwner: TComponent);
begin
  inherited;

  fTest := TLayout.Create(Self);
  fTest.Parent := Self;
end;

当我将此组件放置到表单时,结构列表将Tlayout显示为子组件&lt; components 1&gt;。我怎么能隐藏它? 请参见屏幕截图。enter image description here

1 个答案:

答案 0 :(得分:4)

使用

  1. SetSubComponent(True);

  2. Owner必须为Self

  3. constructor TControl1.Create(AOwner: TComponent);
    begin
      inherited;
    
      fTest := TLayout.Create(Self);
      fTest.SetSubComponent(True);
      fTest.Parent := Self;
    end;
    

    这也是类似的问题:

    How to disable child controls at design-time?