for i:=1 to 100 do with findcomponent(button+inttostr(i)) as Tbutton do click:=yourevent//让每个click事件指向同一事件
在你想要写的事件里如下写下便可以了,只用写一次,不过,好像很是浪费内存 procedure TForm1.someobjectEvents(Sender: TObject); var i:logint; begin for i:= 1 to form1.ComponentCount-1 do begin Tbutton(form1.Components[i]).caption:=timetostr(time); end;end;
不好意思,少写了一点,应该是: 补全了 结分吧 procedure TForm1.Button4Click(Sender: TObject); var i:logint; begin for i:= 1 to form1.ComponentCount-1 do begin if (form1.Components[i] as tbutton ) then Tbutton(form1.Components[i]).caption:=timetostr(time); end; end;
我晕~~~~~ 不好意思 procedure TForm1.someobjectEvents(Sender: TObject); var i:integer; ~~~~~~~~~ longint->integer begin for i:= 0 to form1.ComponentCount-1 do begin if (form1.Components[i] is Tbutton ) then ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ as->is Tbutton(form1.Components[i]).caption:=timetostr(time); end;
with findcomponent(button+inttostr(i)) as Tbutton do
click:=yourevent//让每个click事件指向同一事件
procedure TForm1.someobjectEvents(Sender: TObject);
var
i:logint;
begin
for i:= 1 to form1.ComponentCount-1 do
begin
Tbutton(form1.Components[i]).caption:=timetostr(time);
end;end;
补全了
结分吧
procedure TForm1.Button4Click(Sender: TObject);
var
i:logint;
begin
for i:= 1 to form1.ComponentCount-1 do
begin
if (form1.Components[i] as tbutton ) then
Tbutton(form1.Components[i]).caption:=timetostr(time);
end;
end;
不好意思
procedure TForm1.someobjectEvents(Sender: TObject);
var
i:integer;
~~~~~~~~~ longint->integer
begin
for i:= 0 to form1.ComponentCount-1 do
begin
if (form1.Components[i] is Tbutton ) then
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ as->is
Tbutton(form1.Components[i]).caption:=timetostr(time);
end;
end;
这下没错了