更新时间:2022-02-22 16:20
ON_MESSAGE是MFC里面的一个自定义消息映射宏(如果想了解MFC中自定义消息的工程,请自己在网上搜索一下,网上很多资料),它的作用是绑定一个自定义的消息和该消息的响应函数。
ON_MESSAGE(message, memberFxn ) 参数:
message:消息的ID。
memberFxn :映射message的消息函数,该函数的类型必须是以下类型的
afx_msg LRESULT (CWnd::*)(WPARAM, LPARAM)。
用户自定义消息通常定义在WM_USER(0x0400)至0x7FFF范围内,用户定义的任何消息都不是正规的windows窗口消息WM_MESSAGE。用户自定义消息必须明确地在程序中用ON_MESSAGE宏来声明,从而绑定一个消息响应函数
除了用户自定义消息,ON_MESSAGE很少用来绑定windows的command消息。
//.h
…
#define WM_MYMESSAGE (WM_USER + 100)
…
//.cpp
…
BEGIN_MESSAGE_MAP(CMyWnd2, CWnd)
ON_MESSAGE(WM_MYMESSAGE, OnMyMessage)
END_MESSAGE_MAP()
…
LRESULT CMyWnd2::OnMyMessage(WPARAM wParam, LPARAM lParam)
{
UNREFERENCED_PARAMETER(wParam);
UNREFERENCED_PARAMETER(lParam);
// Handle message here.
return 0;
}
…