IOleWindow::ContextSensitiveHelp 方法 (oleidl.h)
确定是否应在就地激活会话期间进入上下文相关的帮助模式。
语法
HRESULT ContextSensitiveHelp(
[in] BOOL fEnterMode
);
参数
[in] fEnterMode
如果应进入帮助模式,则为 TRUE;如果应退出,则为 FALSE。
返回值
如果成功进入或退出帮助模式,此方法将返回S_OK,具体取决于 在 fEnterMode 中传递的值。 其他可能的返回值包括以下内容。
返回代码 | 说明 |
---|---|
|
指定的 fEnterMode 值无效。 |
|
此操作的可用内存不足。 |
|
发生意外错误。 |
注解
当用户以下情况时,应用程序可以调用上下文相关的帮助:
- 按 SHIFT+F1,然后单击主题
- 选择菜单项时按 F1
如果活动对象收到 SHIFT+F1 击键,它将使用 fEnterModeTRUE 调用容器的 IOleWindow::ContextSensitiveHelp 方法,然后以递归方式调用其每个就地站点,直到没有其他通知。 然后,容器使用 fEnterModeTRUE 调用其文档或框架的 IOleWindow::ContextSensitiveHelp 方法。
在上下文相关帮助模式下,接收鼠标单击的 对象可以:
- 如果不支持上下文相关帮助,请忽略单击。
- 在 ContextSensitiveHelp 设置为 FALSE 的情况下,告知所有其他对象退出上下文相关帮助模式,然后为该上下文提供帮助。
如果容器应用程序要支持菜单项上的上下文相关帮助,它必须提供自己的消息筛选器,以便它可以截获 F1 键,或者通过调用 OleSetMenuDescriptor 并传递 lpFrame 和 lpActiveObj 参数的有效非 NULL 值来要求 OLE 库添加消息筛选器。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows 2000 Professional [仅限桌面应用] |
最低受支持的服务器 | Windows 2000 Server [仅限桌面应用] |
目标平台 | Windows |
标头 | oleidl.h |