IOleInPlaceActiveObject::TranslateAccelerator 方法 (oleidl.h)

处理容器消息队列中的菜单快捷键消息。 此方法仅应用于 DLL 对象应用程序创建的对象。

语法

HRESULT TranslateAccelerator(
  [in] LPMSG lpmsg
);

参数

[in] lpmsg

指向可能需要翻译的消息的 MSG 结构的指针。

返回值

此方法在成功时返回S_OK。 其他可能的返回值包括以下内容。

返回代码 说明
S_FALSE
消息未翻译。
E_INVALIDARG
指定的参数值无效。
E_OUTOFMEMORY
I 可用内存不足,无法用于该操作。
E_UNEXPECTED
发生意外错误。

注解

给调用方的说明

必须始终为活动就地对象提供第一次转换快捷键击的机会。 在执行任何其他转换之前,可以通过从容器的消息循环调用 IOleInPlaceActiveObject::TranslateAccelerator 来提供此机会。 仅当此方法返回S_FALSE时,才应应用自己的翻译。

如果为不是由 DLL 对象应用程序创建的对象调用 IOleInPlaceActiveObject::TranslateAccelerator ,则默认对象处理程序将返回S_FALSE。

实施者说明

EXE 对象应用程序创建的对象从其自己的消息泵获取击键,因此容器不会获取这些消息。

如果需要实现此方法,只需包装 对 TranslateAccelerator 函数的调用即可。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 oleidl.h

另请参阅

IOleInPlaceActiveObject

OleTranslateAccelerator

TranslateAccelerator