Я немного переделал код, так чтобы не было циклов, а срабатывало по нажатию кнопки.
Код:
procedure TForm1.Button1Click(Sender: TObject);
begin
setlength(x, 10);
x[i] := TTimer.Create(self);
x[i].Interval := 10000;
x[i].Enabled := True;
x[i].OnTimer := myproc;
jz:= i;
showmessage('length' + ' ' + inttostr(jz));
i:= i+1;
end;
procedure TForm1.myproc(Sender: TObject);
begin
x[jz].Enabled:= False;
showmessage('My proc' + inttostr(jz));
end;
Но я никак не пойму как сделать так, чтобы при каждом нажатии кнопки Button1 добавлялся новый таймер, который бы срабатывал при наступлении заданного времени и отключался.