Вниз
Скачать: CL | DM;

KillTimer   Найти похожие ветки 

 
xeron   (2006-12-28 19:43) [0]

Привет всем! С наступающим :)

Никак не могу разобраться с таймером на winapi :(

     SetTimer(hwnd, IDT_MAIN, 20, NULL);
//параметры
//1. Хэндл окна
//2. Константный идентификатор таймера (задаётся напримет так: const IDT_MAIN 5001)
//3. Время задержки в мс (в данном случае 20мс)
//4. Вроде указатель на колбэк функцию, при использовании
//обработчика не обязателен

     KillTimer(hwnd, IDT_MAIN);
//параметры
//1. Хэндл окна
//2. Константный идентификатор таймера

Делаю так:

[code]
const
IDT_MAIN=2007;

...

Procedure Proc;
begin
MessageBox(0, "Yo", "Caption", 0);
end;

...

Procedure SetT;
begin
SetTimer(0, IDT_MAIN, 2000, @proc);
end;

...

procedure KillT;
begin
KillTimer(0, IDT_MAIN);
end;
[/code]

Сам таймер работает нормально... Но вот при вызове KillTimer(0, IDT_MAIN); никакой реакции...
Таймер не умирает...
Что я делаю не так?

P.S.
Программа не имеет окон...


 
Anatoly Podgoretsky ©   (2006-12-28 20:19) [1]

> xeron  (28.12.2006 19:43:00)  [0]

А какая ошибка возникает?


 
xeron   (2006-12-28 20:32) [2]

Ошибок никаких нет, просто таймер при вызове KillTimer(0, IDT_MAIN); не останавливается и продолжает работать...


 
Anatoly Podgoretsky ©   (2006-12-28 20:33) [3]

> xeron  (28.12.2006 20:32:02)  [2]

А ты посмотри, не будь таким самоувереным.


 
Dmitrij_K   (2006-12-28 20:37) [4]

Признайся, справку читать пытался?

KillTimer()
Parameters
hWnd
[in] Handle to the window associated with the specified timer. This value must be the same as the hWnd value passed to the SetTimer function that created the timer.
uIDEvent
[in] Specifies the timer to be destroyed. If the window handle passed to SetTimer is valid, this parameter must be the same as the nIDEvent value passed to SetTimer. If the application calls SetTimer with hWnd set to NULL, this parameter must be the timer identifier returned by SetTimer.


 
Dmitrij_K   (2006-12-28 20:38) [5]

Удачи и с новым годом!


 
xeron   (2006-12-28 21:02) [6]

Спасибо, будем разбираться :)


 
GanibalLector ©   (2006-12-29 20:45) [7]

типа :

idTimer:=SetTimer(0, IDT_MAIN, 2000, @proc);
...
KillTimer(0,idTimer);



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.029 c
1-1164870957
DVM
2006-11-30 10:15
2007.01.21
Как лучше такое реализовать? Отлов нажатий клавиш.


2-1167456399
Adios
2006-12-30 08:26
2007.01.21
copyfile


15-1167639254
kaZaNoVa
2007-01-01 11:14
2007.01.21
Стресс и методы борьбы с ним


2-1167247204
jonson35
2006-12-27 22:20
2007.01.21
MySQL


2-1167305531
vain
2006-12-28 14:32
2007.01.21
Сообщение о закрытии от Винды.




   Наверх