Функция IsAccelerator (ole2.h)
Определяет, сопоставляется ли указанное нажатие клавиши с ускорителем в указанной таблице ускорителей.
Синтаксис
BOOL IsAccelerator(
[in] HACCEL hAccel,
[in] int cAccelEntries,
[in] LPMSG lpMsg,
[out] WORD *lpwCmd
);
Параметры
[in] hAccel
Дескриптор таблицы ускорителя.
[in] cAccelEntries
Количество записей в таблице ускорителей.
[in] lpMsg
Указатель на сообщение нажатия клавиши, которое необходимо перевести.
[out] lpwCmd
Указатель на переменную для получения соответствующего идентификатора команды при наличии ускорителя для нажатия клавиш. Этот параметр может иметь значение NULL.
Возвращаемое значение
Если сообщение предназначено для объектного приложения, возвращаемое значение равно TRUE. Если сообщение не предназначено для объекта и должно быть перенаправлено в контейнер, возвращается значение FALSE.
Комментарии
Пока объект активен на месте, у него всегда есть первый шанс преобразовать нажатия клавиш в ускорители. Если нажатие клавиши соответствует одному из своих ускорителей, объект не должен вызывать функцию OleTranslateAccelerator , даже если вызов функции TranslateAccelerator завершается ошибкой . Неспособность обработать нажатия клавиш таким образом может привести к несогласованному поведению.
Если нажатие клавиши не является одним из ускорителей объекта, объект должен вызвать OleTranslateAccelerator , чтобы позволить контейнеру попробовать преобразование ускорителя.
Сервер объекта может вызвать IsAccelerator , чтобы определить, принадлежит ли ему сообщение ускорителя. Некоторые серверы выполняют преобразование ускорителей самостоятельно и не вызывают TranslateAccelerator. Эти приложения не будут вызывать IsAccelerator, так как у них уже есть информация.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | ole2.h |
Библиотека | Ole32.lib |
DLL | Ole32.dll |