- Код: Выделить всё
- procedure TForm1.Label1Click(Sender: TObject);
 var i: integer;
 begin
 for i:=0 to 100 do
 begin
 Label1.Caption := 'Обработано '+IntToStr(i)+' из 100 ';
 Sleep(5);
 end;
 end;
Пустая форма, на ней метка Label1. Хочу, чтобы надпись на ней перебирала все значения от 0 до 100.
Программа же задумывается на пару секунд, потом пишет "Обработано 100 из 100", то есть последнее значение.
Т.е. пока крутится в цикле, значение метки не обновляется.
Как сделать, чтоб обновлялось?
UPD
Добавил прогресбар. Он движется от 0 к 100, как надо. А значение метки так и не обновляется. Только через секунду-две после того, как прогрессбар дошел до 100, появляется надпись "Обработано 100 из 100".
- Код: Выделить всё
- procedure TForm1.Label1Click(Sender: TObject);
 var i: integer;
 begin
 for i:=0 to 200 do
 begin
 Label1.Caption := 'Обработано '+IntToStr(i)+' из 200 ';
 ProgressBar1.Position := i;
 Sleep(5);
 end;
 end;





