Метод IOleInPlaceActiveObject::TranslateAccelerator (oleidl.h)
Обрабатывает сообщения с клавишей акселератора меню из очереди сообщений контейнера. Этот метод следует использовать только для объектов, созданных приложением объектов DLL.
Синтаксис
HRESULT TranslateAccelerator(
[in] LPMSG lpmsg
);
Параметры
[in] lpmsg
Указатель на структуру MSG для сообщения, которое может потребоваться перевести.
Возвращаемое значение
Этот метод возвращает значение S_OK при успешном завершении. Другие возможные возвращаемые значения включают следующее.
Код возврата | Описание |
---|---|
|
Сообщение не было переведено. |
|
Указанные значения параметров недопустимы. |
|
IThere недостаточно памяти, доступной для операции. |
|
Произошла непредвиденная ошибка. |
Комментарии
Примечания к вызывающим абонентам
Активным объектам на месте всегда должна быть предоставлена первая возможность преобразования нажатий клавиш ускорителя. Эту возможность можно предоставить, вызвав IOleInPlaceActiveObject::TranslateAccelerator из цикла сообщений контейнера, прежде чем выполнять другой перевод. Собственный перевод следует применять только в том случае, если этот метод возвращает S_FALSE.При вызове IOleInPlaceActiveObject::TranslateAccelerator для объекта, который не создан приложением объекта DLL, обработчик объектов по умолчанию возвращает S_FALSE.
Примечания для разработчиков
Объект, созданный приложением-объектом EXE, получает нажатия клавиш из собственного насоса сообщений, поэтому контейнер не получает эти сообщения.Если необходимо реализовать этот метод, это можно сделать, просто упаковав вызов функции TranslateAccelerator .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Professional [только классические приложения] |
Минимальная версия сервера | Windows 2000 Server [только классические приложения] |
Целевая платформа | Windows |
Header | oleidl.h |