Поделиться через


Метод IOleControlSite::TranslateAccelerator (ocidl.h)

Передает нажатие клавиши на управляющий сайт для обработки.

Синтаксис

HRESULT TranslateAccelerator(
  [in] MSG   *pMsg,
  [in] DWORD grfModifiers
);

Параметры

[in] pMsg

Указатель на структуру MSG , описывающую нажатие клавиши для обработки.

[in] grfModifiers

Флаги, описывающие состояние клавиш Control, ALT и SHIFT. Значение флага может быть любым допустимым значением перечисления KEYMODIFIERS .

Возвращаемое значение

Этот метод может возвращать следующие значения.

Код возврата Описание
S_OK
Контейнер обработал сообщение.
S_FALSE
Контейнер не обработал сообщение. Это значение также должно возвращаться во всех других случаях ошибок, кроме E_NOTIMPL.
E_NOTIMPL
Контейнер не реализует поддержку акселератора.

Комментарии

Этот метод вызывается элементом управления, который может быть активным в пользовательском интерфейсе. В таких случаях элемент управления может сначала обработать все нажатия клавиш с помощью IOleInPlaceActiveObject::TranslateAccelerator в соответствии с обычными правилами составных документов OLE. Внутри этого метода элемент управления может предоставить контейнеру определенные сообщения для первой обработки, вызвав IOleControlSite::TranslateAccelerator и используя возвращаемое значение, чтобы определить, была ли проведена обработка. В противном случае элемент управления всегда обрабатывает сообщение первым. Если элемент управления не использует нажатие клавиши в качестве ускорителя, он передает нажатие клавиши в контейнер с помощью этого метода.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header ocidl.h

См. также раздел

IOleControlSite

IOleInPlaceActiveObject::TranslateAccelerator