lapulya
Молодой специалист
Offline
|
|
« Ответ #2 : 06-08-2003 22:34 » |
|
На счет таймера
если тебе не нужна большая точность, т.е. тебе надо чтобы в СРЕДНЕМ таймер срабатывал 1 раз за мс, то наш выбор
UINT SetTimer(HWND hwnd, дискриптор окна UINT timerID, ID таймера (чтобы различать таймеры) UINT Elapse, задержка (в милисекундах) TIMERPROC lpTimerProc); callback timer function
если будем обрабатывать в оконной процедуре (WM_TIMER) то lpTimerProc, а hwnd дискриптор окна куда будут слаться сообщения, если с помощью функции обратного вызова, то lpTimerProc = 0.
Если нужна большая точность, то наш выбор DWORD GetTickCount(); Функция возвращает количество мс прошедших с момента запуска ОС => вот так будет очень точно...
DWORD start = GetTickCount(); while (GetTickCount() - start < 1) ;
... но отожрутся ресурсы процессора,
ну а еще есть Sleep(количество мс) - экономит ресурсы но опятьже не точно Sleep(1);
|