Электронная библиотека книг Александра Фролова и Григория Фролова.
Shop2You.ru Создайте свой интернет-магазин
Библиотека
Братьев
Фроловых

Программирование для IBM OS/2

© Александр Фролов, Григорий Фролов
Том 25, М.: Диалог-МИФИ, 1993, 286 стр.

[Назад] [Содеожание] [Дальше]

7.1. Запуск и останов таймера

Для запуска таймера вы должны использовать функцию WinStartTimer , прототип которой приведен ниже:

ULONG WinStartTimer (
  HAB   hab,       // идентификатора блока Anchor-block
  HWND  hwnd,      // идентификатор окна
  ULONG idTimer,   // идентификатор таймера
  ULONG dtTimeout);// задержка в мс

После запуска таймера функция окна hwnd будет получать сообщения WM_TIMER с периодом, заданным параметром dtTimeout. Для операционной системы IBM OS/2 Warp версии 3.0 период должен быть целым числом в диапазоне от 0 до 4294976295. Предыдущие версии этой операционной системы допускали задавать период в диапазоне от 0 до 65535. Через параметр idTimer вы должны передать функции идентификатор таймера.

В случае успеха функция WinStartTimer возвращает идентификатор таймера. Если произошла ошибка, возвращается нулевое значение.

Вот пример использования функции WinStartTimer :

#define ID_APP_TIMER1   1
WinStartTimer (hab, hWnd, ID_APP_TIMER1, 1000);

Для остановки таймера вы должны воспользоваться функцией WinStopTimer :

BOOL WinStopTimer (
  HAB   hab,      // идентификатора блока Anchor-block
  HWND  hwnd,     // идентификатор окна
  ULONG idTimer); // идентификатор таймера

Через параметр idTimer этой функции необходимо передать идентификатор таймера, запущенного ранее функцией WinStartTimer .

[Назад] [Содеожание] [Дальше]