Pascal t管道清洁(拉扎勒斯)

Pascal t管道清洁(拉扎勒斯),pascal,lazarus,Pascal,Lazarus,请告诉我,TPanel是否有清除TPanel上所有对象的方法 例如,如果将某些标签放置在TPanel(Label.Visible=true),则在应用该方法后,它们变为不可见(Label.Visible:=false)。当然可以使用 Panel.Visible = false; 将面板作为父对象的所有图元都将更改可见性 如果在运行时创建控件,则应使用 myLabel.Parent = Panel; 要销毁TPanel上的所有对象还是只需隐藏 如果您只需要隐藏面板的所有组件,此代码可能会帮助您

请告诉我,
TPanel
是否有清除
TPanel
上所有对象的方法

例如,如果将某些标签放置在
TPanel
(Label.Visible=true),则在应用该方法后,它们变为不可见(Label.Visible:=false)。

当然可以使用

Panel.Visible = false;
将面板作为父对象的所有图元都将更改可见性

如果在运行时创建控件,则应使用

myLabel.Parent = Panel;

要销毁TPanel上的所有对象还是只需隐藏

如果您只需要隐藏面板的所有组件,此代码可能会帮助您:


谢谢你,这就是我需要的!
procedure TForm1.chk_Visible_AllChange(Sender: TObject);
var
  n: Integer;
  cmp : TComponent;
begin

  for n:= 0 to ComponentCount-1 do
    begin
      cmp := Components[n];
      if cmp.GetParentComponent=Panel1 then
        begin
          if cmp is TLabel then
            TLabel(cmp).Visible:= chk_Visible_All.Checked;
          if cmp is TButton then
            TButton(cmp).Visible:= chk_Visible_All.Checked;
          if cmp is TMemo then
            TMemo(cmp).Visible:= chk_Visible_All.Checked;
          if cmp is TGroupBox then
            TGroupBox(cmp).Visible:= chk_Visible_All.Checked;
        end;
    end;
end;