共用方式為


IOleWindow::ContextSensitiveHelp 方法 (oleidl.h)

判斷是否應該在就地啟用會話期間輸入內容相關的說明模式。

語法

HRESULT ContextSensitiveHelp(
  [in] BOOL fEnterMode
);

參數

[in] fEnterMode

如果應該輸入說明模式,則為TRUE;如果應該結束,則為 FALSE。

傳回值

這個方法會根據 fEnterMode 中傳遞的值,傳回S_OK如果成功進入或結束說明模式。 其他可能的傳回值包括下列專案。

傳回碼 Description
E_INVALIDARG
指定的 fEnterMode 值無效。
E_OUTOFMEMORY
此作業的記憶體不足。
E_UNEXPECTED
已發生未預期的錯誤。

備註

當使用者時,應用程式可以叫用內容相關的說明:

  • 按SHIFT+F1,然後按兩下主題
  • 選取功能表項時按下 F1
按下 SHIFT+F1 時,框架或作用中物件都可以接收按鍵。 如果容器的框架收到按鍵,它會呼叫其包含檔的 IOleWindow::ContextSensitiveHelp 方法, 並將 fEnterMode 設定為 TRUE。 這會將說明狀態傳播至其所有就地物件,以便正確地處理滑鼠按兩下或WM_COMMAND。

如果作用中物件收到 SHIFT+F1 按鍵,它會使用 fEnterModeTRUE 呼叫容器的 IOleWindow::ContextSensitiveHelp 方法,然後以遞歸方式呼叫其就地月臺,直到不再收到通知為止。 然後容器會使用 fEnterModeTRUE 呼叫其檔的 IOleWindow::ContextSensitiveHelp 方法。

在內容相關的說明模式中時,接收滑鼠按兩下的物件可以:

  • 如果不支援內容相關說明,請忽略按兩下。
  • 告知所有其他對象結束內容相關的說明模式, 並將 ContextSensitiveHelp 設定為 FALSE ,然後提供該內容的說明。
在內容相關的說明模式中接收WM_COMMAND的對象應該告訴所有其他就地對象結束內容相關的說明模式,然後提供命令的說明。

如果容器應用程式支援功能表項的內容相關說明,它必須提供自己的訊息篩選條件,以便攔截 F1 鍵,或要求 OLE 連結庫呼叫 OleSetMenuDescriptor 來新增訊息篩選,傳遞 lpFramelpActiveObj 參數的有效、非 NULL 值。

規格需求

需求
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 oleidl.h

另請參閱

IOleWindow

OleSetMenuDescriptor