Замена TTimer
Модератор: Модераторы
- Сергей Смирнов
- энтузиаст
- Сообщения: 595
- Зарегистрирован: 28.04.2005 13:23:25
- Откуда: Москва
- Контактная информация:
Может туплю, но не могу сообразить, чем заменить TTimer так, чтобы не было зависимости от LCL. Не обязательно компонент, достаточно просто кода, выполнение которого приводит к периодическому запуску указанной процедуры. Неужто в FCL такого нет? Куда копать-то?
PS: Это всё к тому, чтобы избавиться от LCL-зависимости у FIBL. Периодический запуск процедуры там реально нужен для проверки соединения.
PS: Это всё к тому, чтобы избавиться от LCL-зависимости у FIBL. Периодический запуск процедуры там реально нужен для проверки соединения.
-
Гость_SergKam
- Сергей Смирнов
- энтузиаст
- Сообщения: 595
- Зарегистрирован: 28.04.2005 13:23:25
- Откуда: Москва
- Контактная информация:
- shraibikus
- новенький
- Сообщения: 36
- Зарегистрирован: 22.09.2009 16:22:42
- Откуда: Столица деревень
- Контактная информация:
Cтас писал(а):Используй SetTimer, описание в МСДН.
ок.
В Delphi этот код работает:
Код: Выделить всё
SetTimer(0,1,1000,@OnTimer);
в Lazarus сообщает:
RDM.lpr(24,40) Error: Incompatible type for arg no. 4: Got "<address of procedure;Register>", expected "<procedure variable type of procedure(LongWord, LongWord, LongWord, LongWord);StdCall>"
Как быть, кроме
Код: Выделить всё
{$mode delphi}{$h+}
?
Функция обработчик должна выглядеть так:
Код: Выделить всё
procedure OnTimerProc(_para1:HWND; _para2:UINT; _para3:UINT; _para4:DWORD); stdcall;- shraibikus
- новенький
- Сообщения: 36
- Зарегистрирован: 22.09.2009 16:22:42
- Откуда: Столица деревень
- Контактная информация:
Mr.Smart спасибо! =)
В рассылке только что пробегал вопрос по TFPTimer.
