Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Создать мультимедийный таймер

Оформил: DeeCo
Автор: http://www.swissdelphicenter.ch

{ 
  The timeSetEvent function starts a specified timer event. 
  The multimedia timer runs in its own thread. After the event is activated, 
  it calls the specified callback function or sets or pulses the spe 
  cified event object. 

  MMRESULT timeSetEvent( 
  UINT           uDelay, 
  UINT           uResolution, 
  LPTIMECALLBACK lpTimeProc, 
  DWORD_PTR      dwUser, 
  UINT           fuEvent 
  ); 

  uDelay: 
   Event delay, in milliseconds 

  uResolution: 
   Resolution of the timer event, in milliseconds. 
   A resolution of 0 indicates periodic events should occur with the 
   greatest possible accuracy. 
   You should use the use the maximum value appropriate to reduce system overhead. 

  fuEvent: 
   TIME_ONESHOT Event occurs once, after uDelay milliseconds. 
   TIME_PERIODIC Event occurs every uDelay milliseconds. 
}


 uses
   MMSystem;

 var
   mmResult: Integer;


 // callback function 
procedure TimeCallBack(TimerID, Msg: Uint; dwUser, dw1, dw2: DWORD); pascal;
 begin
   // Do something here. This procedure will be executed each 10 ms 
  Form1.Label1.Caption := Form1.Label1.Caption + '%';
 end;

 // Set a new timer with a delay of 10 ms 
procedure TForm1.Button1Click(Sender: TObject);
 begin
   mmResult := TimeSetEvent(10, 0, @TimeCallBack, 0, TIME_PERIODIC);
 end;


 // Cancel the timer event. 
procedure TForm1.FormDestroy(Sender: TObject);
 begin
   TimeKillEvent(mmResult);
 end;
Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay