所谓很多人说Delphi不支持控件数组,那是错误的说法,
准确一点是Delphi不支持设计期的控件数组,
Delphi支持数组,支持动态数组,支持指针数组,
就是没有规定不支持控件数组,所以Delphi是完全支持控件数组的.
procedure TForm1.Button2Click(Sender: TObject);
var a:Array of Pointer;
i:Integer;
begin
SetLength(a,ComponentCount);
For i:=0 to ComponentCount-1 do
a:=Components;
For i:=0 to High(a) do
begin
if (TObject(a) is TEdit) then
TEdit(a).Text:=IntToStr(i)
else
if TObject(a) is TButton then
TButton(a).Caption:='Button'+IntToStr(i);
end;
SetLength(a,0);
end;