Тарас Сорока - Русский справочник по Win32 API
- Название:Русский справочник по Win32 API
- Автор:
- Жанр:
- Издательство:неизвестно
- Год:неизвестен
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Тарас Сорока - Русский справочник по Win32 API краткое содержание
Русский справочник по Win32 API - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Возвращаемые значения
В случае успеха возвращается ненулевое значение.
В случае неудачи возвращается нуль. Для получения дополнительной информации об ошибке вызовите функцию GetLastError.
Комментарии
Функция KillTimerне удаляет сообщения WM_TIMER, уже помещенные в очередь сообщений.
См. также
SetTimer, WM_TIMER.
QueryPerformanceCounter
Функция QueryPerformanceCounterизвлекает текущее значение счетчика производительности, если таковой существует.
BOOL QueryPerformanceCounter(
LARGE_INTEGER *lpPerformanceCount // адрес текущего значения счетчика
);
Параметры
lpPerformanceCount - указывает на переменную, которую функция устанавливает в текущее значение счетчика. Если установленное аппаратное обеспечение не поддерживает счетчик производительности, этот параметр может быть установлен в нуль.
Возвращаемые значения
В случае, если установленное аппаратное обеспечение поддерживает счетчик производительности, возвращается ненулевое значение.
Если установленное аппаратное обеспечение не поддерживает счетчик производительности, возвращается нуль.
См. также
QueryPerformanceFrequency.
QueryPerformanceFrequency
Функция QueryPerformanceFrequencyизвлекает частоту счетчика производительности, если таковой существует.
BOOL QueryPerformanceFrequency(
LARGE_INTEGER *lpFrequency // адрес текущей частоты
);
Параметры
lpFrequency - указывает на переменную, значение которой, в отсчетах в секунду, функция устанавливает в текущую частоту счетчика производительности. Если установленное аппаратное обеспечение не поддерживает счетчик производительности, значение этого параметра может быть равно нулю.
Возвращаемые значения
В случае, если установленное аппаратное обеспечение поддерживает счетчик производительности, возвращается ненулевое значение.
В случае, если установленное аппаратное обеспечение не поддерживает счетчик производительности, возвращается нуль.
См. также
QueryPerformanceCounter.
SetTimer
Функция SetTimerсоздает таймер с указанным интервалом срабатывания.
UINT SetTimer(
HWND hWnd , // дескриптор окна для сообщений таймера
UINT nIDEvent , // идентификатор таймера
UINT uElapse , // интервал срабатывания таймера
TIMERPROC lpTimerFunc // адрес процедуры таймера
);
Параметры
hWnd - идентифицирует окно, связанное с таймером. Окном должен владеть вызывающий поток. Если значение этого параметра равно NULL, с таймером не связывается никакого окна и параметр nIDEvent игнорируется.
nIDEvent - определяет ненулевой идентификатор таймера. Если значение параметра hWnd равно NULL, этот параметр игнорируется.
uElapse - определяет интервал срабатывания в миллисекундах.
lpTimerFunc - указывает на функцию, уведомляемую об истечении заданного интервала. Для дополнительной информации смотрите описание функции TimerProc.
Если значение lpTimerFunc равно NULL, система отправляет сообщение WM_TIMER в очередь собщений приложения. Значение члена hwnd структуры сообщения типа MSGсодержит значение параметра hWnd .
Возвращаемые значения
В случае успеха возвращается целочисленный идентификатор нового таймера. Приложение может передавать этот идентификатор в функцию KillTimerдля разрушения таймера.
Если не удалось создать новый таймер, возвращается нуль.
Комментарии
Приложение может обрабатывать сообщение WM_TIMER в оконной процедуре приложения, с соответствующим включением в ее исходный код оператора case, либо указывая при создании таймера функцию обратного вызова TimerProc. Когда вы указываете функцию обратного вызова, функция DispatchMessageпросто вызывает ее вместо оконной процедуры.
Значение параметра wParam сообщения WM_TIMER содержит значение параметра nIDEvent .
См. также
DispatchMessage, KillTimer, MSG, TimerProc, WM_TIMER.
TimerProc
Функция TimerProcявляется определяемой приложением функцией обратного вызова, которая обрабатывает сообщения WM_TIMER.
VOID CALLBACK TimerProc(
HWND hwnd , // дескриптор окна для сообщений таймера
UINT uMsg , // сообщение WM_TIMER
UINT idEvent , // идентификатор таймера
DWORD dwTime // текущее системное время
);
Параметры
hwnd - идентифицирует окно, связанное с таймером.
uMsg - определяет сообщение WM_TIMER.
idEvent - определяет идентификатор таймера.
dwTime - задает число миллисекунд, истекших с момента старта Windows. Это значение возвращается функцией GetTickCount.
Возвращаемые значения
Функция не возвращает значения.
Комментарии
TimerProcявляется "заполнителем" для имени определяемой приложением функции.
См. также
GetTickCount, KillTimer, SetTimer, WM_TIMER.
Сообщения
WM_TIMER
Сообщение WM_TIMER отправляется в очередь сообщений установившего таймер потока или соответствующей функции обратного вызова TimerProcпо истечении интервала, заданного при установке таймера функцией SetTimer.
WM_TIMER
wTimerID = wParam ; // идентификатор таймера
tmprc = ( TIMERPROC*) lParam ; // адрес функции обратного вызова таймера
Параметры
wTimerID - значение wParam . Определяет идентификатор таймера.
tmprc - значение lParam . Указывает на определяемую приложением функцию обратного вызова, адрес которой был передан при установке таймера функцией SetTimer. Если значение параметра tmprc не равно NULL, Windows передает сообщение WM_TIMER указанной функции обратного вызова вместо помещения сообщения в очередь сообщений потока.
Возвращаемые значения
Приложение должно возвращать нуль, если оно обрабатывает это сообщение.
Комментарии
Функция DispatchMessageпередает сообщение в очередь сообщений потока, когда в ней нет других сообщений.
См. также
DispatchMessage, SetTimer, TimerProc.
Ввод с клавиатуры
SetKeyboardState
Функция SetKeyboardStateкопирует массив из 256 байт состояний клавиш в таблицу состояния ввода с клавиатуры вызывающего потока. Это та же самая таблица, к которой имеют доступ функции GetKeyboardStateи GetKeyState. Изменения, сделанные в этой таблице, не влияют на ввод с клавиатуры для других потоков.
BOOL SetKeyboardState(
LPBYTE lpKeyState // адрес массива с кодами виртуальных клавиш
);
Параметры
Читать дальшеИнтервал:
Закладка: