MFC アプリケーションでの HTML ヘルプの通知メッセージの受信

MFC プログラム内の HTML ヘルプ メッセージから通知を受け取るには、次の条件を満たしている:

  1. Visual C++ プロジェクトのシンボルを定義します。この例では ID_HHNOTIFICATION というシンボルを使用します。

    • シンボルを定義するには、 ResourceView の高レベル フォルダーを右クリックし、 Resource Symbolsを選択します。

    • Resource Symbols のダイアログ ボックスで、 New をクリックし、新しいシンボルを定義します。

  2. Visual C++ プロジェクトでは、 HH_WINTYPE の構造体を初期化し、 HH_SET_WIN_TYPE コマンドを使用してこの構造を設定するに HTMLHelp 関数を呼び出しますします。構造体の idNotify フィールドの使用 ID_HHNOTIFICATION

  3. メッセージを受信すること CWnd のクラスの派生オブジェクトの OnNotify 関数をオーバーライドします ( HWND に関連付けられた CWnd のクラスは WW_WINTYPE の構造体の hwndCaller フィールドで指定します)。HTML ヘルプのトピックに移動するたびに OnNavComplete(HHN_NOTIFY*, LRESULT) ハンドラーを呼び出すために OnNotify 関数がどのように使用するかを次の例に示します。:

    BOOL CMyDlg::OnNotify(WPARAM wParam, LPARAM lParam, LRESULT* pResult)
    {
       NMHDR* pNMHDR = (NMHDR*)lParam;
       switch (pNMHDR->idFrom)
       {
          case ID_HHNOTIFICATION:  // whatever id you placed in idNotify of HH_WINTYPE
             if (pNMHDR->code == HHN_NAVCOMPLETE)
             {
                OnNavComplete((HHN_NOTIFY*) lParam, pResult);
                return TRUE;
             }
             break;
       }
    
       return CDialog::OnNotify(wParam, lParam, pResult);
    }
    

参照

概念

HTML ヘルプ : プログラムの状況依存のヘルプ