Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: Pascal
Expertise: Beginner
May 8, 1997



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Changing Label Captions in a FOR Loop

I'm trying something like this:
for i:=0 to 1000 do
  label1.caption:='I= '+inttostr(i);
but the loop executed so fast, the label doesn't display anything until the loop is over.

This relates to a file copy method I'm creating. I want to display the name of the file being copied while a progress bar tracks the progress of the file copy. But the label won't display the text in the loop!

Here's one thing that's daunting to many people: Loops execute incredibly fast in Delphi. The only way to slow them down is to use the Sleep procedure. Your new code would look like this:

for i:=0 to 1000 do begin
  label1.caption:='I= '+inttostr(i);
  Sleep(200); //sleep for 200 milliseconds before going on.
That's the only way you can slow the loop down. Otherwise, the loop will finish execution in the blink of an eye.
DevX Pro
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date