Export (0) Print
Expand All
TRY
Expand Minimize

ON_MESSAGE

Indicates which function will handle a user-defined message.

ON_MESSAGE(message, memberFxn)

message

The message ID.

memberFxn

The name of the message-handler function to which the message is mapped.

The type of the function must be afx_msg LRESULT (CWnd::*)(WPARAM, LPARAM).

User-defined messages are any messages that are not standard Windows WM_MESSAGE messages. When selecting a message ID, you must use values within the range of WM_USER (0x0400) to 0x7FFF or WM_APP (0x8000) to 0xBFFF. For more information regarding message IDs, see WM_APP.

There should be exactly one ON_MESSAGE macro statement in your message map for every user-defined message that must be mapped to a message-handler function.

Note Note

In addition to user-defined messages, ON_MESSAGE handles less common Windows messages. For more information, see Knowledge Base article 99848: INFO: Use ON_MESSAGE() Macro to Map Less-Common Messages.

For more information and examples, see Message Handling and Mapping Topics and User-Defined Handlers

#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;
}

Header: afxmsg_.h

Community Additions

ADD
Show:
© 2014 Microsoft