Question:
I have a simple animation on a form created by turning bitmaps on and off in sequence. How can I pause between frames? There is no wait or pause command.
I can create a nested for-loop but this seems a clumsy way to solve the problem. There must be a simple way to delay the program for an exact number of seconds. Any ideas?
Answer:
If you’re using Delphi 2.0, use the Sleep procedure. Look it up in thehelp file. If you’re using Delphi 1.0, you can use the procedure below:
procedure Sleep(SleepSecs : Integer);var StartValue : LongInt;begin {Initialize vars} StartValue := GetTickCount; {Get value of current milliseconds elapsed} While ((GetTickCount – StartValue) <= (SleepSecs * 1000)) do Application.ProcessMessages;end;It does the same thing as Delphi 2.0’s sleep, though D2’s Sleep offers abetter time resolution by using milliseconds as its input.