그 목적에 따라서 쓰레드로 만들수도 있고, 아니면 그냥 메인쓰레드에서 처리할것도 있구요..
먼저 쓰레드로 만들려면..
Delphi - IDE에서 File-New-Other... 에서 Thread-Object 를 선택해서 Add 하신후에
Thread의 Execute 에 원하는 코드를 넣으시구..
거기서 Sleep이나 WaitForSingleObject 나 WaitFormMultipleObject 등을 쓰면 되구요..
그냥 메인쓰레드에서 하려면...
같은 함수 roof를 두번 이상 타지 않도록 주의하시구
while구문같은것으로 반속해서 원하는 시간만큼 지났는지 계속 체그하시구요
구문중간에 Application.ProcessMessages를 넣으시면 됩니다.
procedure Delay(TickTime : Integer);
var
Past,Now: Integer;
begin
Past := GetTickCount;
repeat
Now := GetTickCount;
Application.ProcessMessages;
Until Now > Past + TickTime;
end;