在MFC程序设计中,使用自定义消息通常有如下几种类型:
A. 自定义窗口消息
B. 自定义工具栏消息
C. 自定义菜单栏消息
D. 自定义右键菜单消息
1、自定义窗口消息
(1)、首先需要定义消息#define WM_XXXXXX WM_USER+X(此处最好使用WM_USER,而不要使用数字,以免与系统使用的发生重复冲突,X为没有使用过的数字);
(2)、在.h文件中DECLARE_MESSAGE_MAP()之前声明消息响应处理函数afx_msg LRESULT OnFunName(WPARAM wParam, LPARAM lParam);
(3)、在.cpp文件中实现消息处理函数
LRESULT ClassName::OnFunName(WPARAM wParam, LPARAM lParam)
{
return 0;
}
(4)、在.cpp文件中BEGIN_MESSAGE_MAP之后定义消息映射ON_MESSAGE(WM_XXXXXX,OnFunName);
(5)、发送消息调用响应函数 SendMessage(WM_XXXXXX, 0, 0)(如果有需要向响应函数传入参数,可以使用SendMessage函数的后两个参数);
2、自定义工具栏消息