Delphi去持控件数组,你只要简单的声明一个与普通数组一样的数组,比如是按钮数组:
Btns:array[0..10] of TButton;你就可以使用了。下面是我的一个项目中用到的:
procedure SetButtonStateEx(qry:TpFIBDataSet;
Buttons:array of TksoOfficeSpeedButton);
var
i:integer;
begin
if qry.RecordCount >0 then
for i := low(Buttons) to High(Buttons) do
Buttons[i].Enabled := true
else
for i := low(Buttons) to High(Buttons) do
Buttons[i].Enabled := false;
end;
Btns:array[0..10] of TButton;你就可以使用了。下面是我的一个项目中用到的:
procedure SetButtonStateEx(qry:TpFIBDataSet;
Buttons:array of TksoOfficeSpeedButton);
var
i:integer;
begin
if qry.RecordCount >0 then
for i := low(Buttons) to High(Buttons) do
Buttons[i].Enabled := true
else
for i := low(Buttons) to High(Buttons) do
Buttons[i].Enabled := false;
end;
var
Btns: array[0..10] of TButton;
I: Integer;
begin
for I := Low(Btns) to High(Btns) do begin
Btns[I] := TButton.Create(Self);
Btns[I].Parent := Self;
Btns[I].Left := I * 10;
Btns[I].Top := I * 10;
Btns[I].Caption := Format('Btns[%d]', [I]);
Btns[I].OnClick := Button1Click;
end;
end;procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(TButton(Sender).Caption);
end;
似有所悟,请指点。