IRichEditOleCallback::GetContextMenu 方法 (richole.h)

查询应用程序以在右键单击事件上使用的上下文菜单。

语法

HRESULT GetContextMenu(
  WORD        seltype,
  LPOLEOBJECT lpoleobj,
  CHARRANGE   *lpchrg,
  HMENU       *lphmenu
);

参数

seltype

类型: WORD

选择类型。 该值指定新选定内容的内容,可以是以下一个或多个值。

含义
SEL_EMPTY
所选内容为空。
SEL_TEXT
文本。
SEL_OBJECT
至少一个 COM 对象。
SEL_MULTICHAR
文本的多个字符。
SEL_MULTIOBJECT
多个 COM 对象。
GCM_RIGHTMOUSEDROP
指示应生成鼠标右拖放的上下文菜单。 lpoleobj 参数是指向要删除的 对象的 IDataObject 接口的指针。

lpoleobj

类型: LPOLEOBJECT

指向接口的指针。 如果 seltype 参数包含 SEL_OBJECT 标志, 则 lpoleobj 是指向第一个选定 COM 对象的 IOleObject 接口的指针。 如果 seltype 包含 GCM_RIGHTMOUSEDROP 标志, 则 lpoleobj 是指向 IDataObject 接口的指针。 否则, lpoleobjNULL。 如果保留接口指针,则必须调用 AddRef 方法来递增对象的引用计数。

lpchrg

类型: CHARRANGE*

指向 CHARRANGE 结构的指针,该指针包含当前选项。

lphmenu

类型: HMENU*

要使用的上下文菜单的句柄。 如果返回错误,则忽略此参数。 丰富编辑控件在完成菜单时会销毁菜单,因此客户端不应这样做。

返回值

类型: HRESULT

如果成功,则返回 S_OK。 如果方法失败,它可以是以下值。

返回代码 说明
E_INVALIDARG
存在无效参数。

注解

当用户从上下文窗口中选择项时, 会将WM_COMMAND 消息发送到富编辑控件的父窗口。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
目标平台 Windows
标头 richole.h
DLL Msftedit.dll

另请参阅

CHARRANGE

GETCONTEXTMENUEX

IRichEditOleCallback

引用