次の方法で共有


ON_MESSAGE

更新 : 2010 年 5 月

ユーザー定義メッセージをどの関数で処理するかを示します。

ON_MESSAGE(message, memberFxn)

パラメーター

  • message
    メッセージ ID。

  • memberFxn
    メッセージが割り当てられるメッセージ処理関数名。

    関数の型は afx_msg LRESULT (CWnd::*)(WPARAM, LPARAM) にする必要があります。

解説

ユーザー定義メッセージとは、Windows の標準の WM_MESSAGE メッセージ以外のメッセージです。 メッセージ ID を選択する場合、WM_USER (0x0400) ~ 0x7FFF または WM_APP (0x8000) ~ 0xBFFF の範囲内の値を使用する必要があります。 メッセージ ID の詳細については、「WM_APP」を参照してください。

メッセージハンドラー関数にマップされるすべてのユーザー定義メッセージに対して、メッセージ マップに存在する ON_MESSAGE マクロ ステートメントは 1 つだけです。

注意

ON_MESSAGE では、ユーザー定義メッセージに加えて、通常使用されない Windows メッセージも処理されます。 詳細については、サポート技術情報の記事を参照してください99848:情報:ON_MESSAGE() マクロ マップあまり一般的メッセージを使用して

詳細と例については、「メッセージの処理とマップ」と「ユーザー定義のハンドラー」を参照してください。

使用例

#define WM_MYMESSAGE (WM_USER + 100)
BEGIN_MESSAGE_MAP(CMyWnd2, CWnd)
   ON_MESSAGE(WM_MYMESSAGE, OnMyMessage)
END_MESSAGE_MAP()
// inside the class declaration
 afx_msg LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam);
LRESULT CMyWnd2::OnMyMessage(WPARAM wParam, LPARAM lParam)
{
   UNREFERENCED_PARAMETER(wParam);
   UNREFERENCED_PARAMETER(lParam);

   // Handle message here.

   return 0;
}

必要条件

**ヘッダー:**afxmsg_.h

参照

参照

ON_UPDATE_COMMAND_UI

ON_CONTROL

ON_REGISTERED_MESSAGE

ON_COMMAND

概念

MFC マクロとグローバル

履歴の変更

日付

History

理由

2010 年 5 月

テキストの「サポート技術情報」(knowledge Base) 資料の参照リンクを交換してください。

カスタマー フィードバック