dcsimg
Login | Register   
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX

By submitting your information, you agree that devx.com may send you DevX offers via email, phone and text message, as well as email offers about other products and services that DevX believes may be of interest to you. DevX will process your information in accordance with the Quinstreet Privacy Policy.


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

WEBINAR:

On-Demand

Application Security Testing: An Integral Part of DevOps


Changing Label Captions in a FOR Loop

Question:
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!

Answer:
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.
end;
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.

 

 

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