我想让我的程序延迟一会儿,但又不想用循环,有Delay()这样的函数吗?

解决方案 »

  1.   

    可以用SLEEP()
    还可以自己写空的循环语句!!!
      

  2.   

    用这函数吧,我觉得比Sleep好
    procedure Delay(MSec:Integer);
    var
      B_Count,E_Count:Integer;
    begin
      B_Count:=GetTickCount;
      E_Count:=GetTickCount;
      while E_Count-B_Count<MSec do
      begin
        E_Count:=GetTickCount;
        Application.ProcessMessages;
      end;
    end;
      

  3.   

    同意楼上!其实直接用——
    Application.ProcessMessages;
    Sleep(1000);  //ms这样简单易行
      

  4.   

    var
       i:integer;
    begin
         i:=gettickcount div 1000;
         while (gettickcount div 1000)<(i+3) do
                sleep(1);
    end;
      

  5.   

    楼上的程序段是延时三妙,你也可以改一改成你需要的时间,用sleep函数,用法上面都写了,呵呵祝:身体健康!!