我在FORM上放一个ScrollBox,在上面动态生成控件,再生成子控件(如Panel上有Edit)
怎样把上面的控件Free呢?
for i:=0 to ScrollBox2.ControlCount-1 do
begin
ScrollBox2.Controls[i].Destroy;(此处ScrollBox2.Controls[i]上还有控件怎么Free呢?)
ScrollBox2.Controls[i].Free;
end;
ScrollBox2.Update;
怎样把上面的控件Free呢?
for i:=0 to ScrollBox2.ControlCount-1 do
begin
ScrollBox2.Controls[i].Destroy;(此处ScrollBox2.Controls[i]上还有控件怎么Free呢?)
ScrollBox2.Controls[i].Free;
end;
ScrollBox2.Update;
YourContral:=TYonrContal.Creat(PanelX);
YourContral.paren:=PanelX;
End;begin//删除控件
PanelX.free;//只须这样就可以将所有控件删除
end;delphi中有个约定,当一个对象free时,所有owne属性为这个对象的对象都会自动free。
A[i],然后你还要在Control[i]_A上面创建新的二级控件Control[i]_B........
Control_A[i]:=TControl_A.Create(ScrollBox);
Control_A[i].Parent:=ScrollBoxControl_B[i]:=TControl_B.Create(Control_A[i]);
Control_B[i].Parent:=Control_A[i];释放的时候可以用你原来的
for i:=ScrollBox2.ControlCount-1 downto 0 do //一般都要这样循环
begin
FreeAndNil(ScrollBox2.Controls[i]);
end;
Free Edit1
给你个有语法问题的答案.for i=0 to form1.compoments.count-1 do
begin
if form1.compomtnt[i].parent=panel1
edit1.free;
end;再Free Panel1
owner属性是个Read-Only属性.