delphi能删除动态生成的控件吗?

解决方案 »

  1.   

    你的问题很抽象
    实例删除动态创建的BUtton创建
      BB := TButton.Create(self);
      BB.Parent := self;删除
      BB.Free;
      

  2.   


    先声明一个Edit数组,可以是静态的也可以是动态的比如   AEdit:   array   of   TEdit;   
      //创建   
              Count   :=   10;   
              SetLength(AEdit,Count+1);   
              for   i:=1   to   Count   do   
              begin   
                  EditName   :=   'Edit'   +   IntToStr(i);   
                  AEdit[i]   :=   TEdit.Create(Self);   
                  AEdit[i].Parent   :=   Self;   
                  if   i   =   1   then   
                  begin   
                      AEdit[i].Top   :=   Top;   
                  end   
                  else   if   i   >   1   then   
                  begin   
                      AEdit[i].Top   :=   Top   +   10;   
                  end;   
                  AEdit[i].Left   :=   405;   
                    AEdit[i].Width   :=   100;   
                  AEdit[i].Height   :=   14;   
                  AEdit[i].AutoSize   :=   False;   
                  AEdit[i].Name   :=   EditName;   
                  AEdit[i].OnKeyDown   :=   EditKeyDown;   
      //释放   
              for   i:=1   to   Count   do   
              begin   
                  EditName   :=   'Edit'   +   IntToStr(i);   
                  if   assigned(TEdit(FindComponent(EditName))   then   
                  begin   
                      (FindComponent(EditName)   as   TEdit).Free;   
                      (FindComponent(EditName)   as   TEdit)   :=   nil;   
                  end;   
              end;   
              AEdit   :=   nil;