IOleWindow::ContextSensitiveHelp
A version of this page is also available for
4/8/2010
Determines whether context-sensitive help mode should be entered during an in-place activation session.
Syntax
HRESULT ContextSensitiveHelp(
BOOL fEnterMode
);
Parameters
- fEnterMode
[in] TRUE if help mode should be entered; FALSE if it should be exited.
Return Value
This method supports the following return values:
Value | Description |
---|---|
S_OK |
The help mode was entered or exited successfully, depending on the value passed in fEnterMode. |
E_INVALIDARG |
The call to the method contains an invalid argument. |
E_OUTOFMEMORY |
The call could not be completed due to lack of free memory. |
E_UNEXPECTED |
The call to the method unexpectedly failed. |
Remarks
Applications can invoke context-sensitive help when the user
- Presses SHIFT+F1, then clicks a topic.
- Presses F1 when a menu item is selected.
When SHIFT+F1 is pressed, either the frame or active object can receive the keystrokes. If the container's frame receives the keystrokes, it calls its containing document's IOleWindow::ContextSensitiveHelp method with fEnterMode set to TRUE. This propagates the help state to all of its in-place objects so they can correctly handle the mouse click or WM_COMMAND.
If an active object receives the SHIFT+F1 keystrokes, it calls the container's IOleInPlaceSite::ContextSensitiveHelp method with fEnterMode TRUE, which then recursively calls each of its in-place sites until there are no more to be notified. The container then calls its document's or frame's ContextSensitiveHelp method with fEnterMode TRUE.
When in context-sensitive help mode, an object that receives the mouse click can either:
- Ignore the click if it does not support context-sensitive help.
- Tell all the other objects to exit context-sensitive help mode with ContextSensitiveHelp set to FALSE and then provide help for that context.
An object in context-sensitive help mode that receives a WM_COMMAND should tell all the other in-place objects to exit context-sensitive help mode and then provide help for the command.
If a container application is to support context-sensitive help on menu items, it must either provide its own message filter so that it can intercept the F1 key or ask the OLE library to add a message filter by calling OleSetMenuDescriptor, passing valid, non-NULL values for the lpFrame and lpActiveObj parameters.
Requirements
Header | Oleidl.h |
Windows Embedded CE | Windows CE .NET 4.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |