自定义消息
来源:互联网 发布:biz是哪个国家的域名 编辑:程序博客网 时间:2024/06/11 21:48
1.自定义消息的发送方法
(1)在 resource.h 或 stdax.h 文件添加如下代码定义一个自己的消息:
#define WM_MY_MESSAGE WM_USER +1
(2)在消息处理函数所在的类的头文件中添加如下代码:
//{{AFX_MSG(C...)
afx_msg ........
afx_msg ........
afx_msg void OnMyMessage(/*WPARAM wParam, LPARAM lParam*/);//参数有无根据实际情况而定
//}}AFX_MSG
DECLARE_MESSAGE_MAP( )
(3)在消息处理函数所在的类的cpp文件中添加如下代码:
BEGIN_MESSAGE_MAP(... , ...)
//{{AFX_MSG_MAP(CPostmessageView)
ON_COMMAND .......
ON_MESSAGE(WM_MY_MESSAGE, OnMyMessage)
//}}AFX_MSG_MAP
......
END_MESSAGE_MAP()
(4)在消息处理函数所在的类的cpp文件中手动添加消息相应函数代码:
void CPostmessageView::OnMyMessage(/*WPARAM wParam, LPARAM lParam*/)
{
........
........
}
(5)在需要发送消息的地方添加代码:
PostMessage(WM_MY_MESSAGE);
或
SendMessage(WM_MY_MESSAGE);
2.从一个类向MainFrame类发送自定义消息
直接使用PostMessage或SendMessage函数只能向函数所在的类发送消息,如果想向MainFrame类发送消息,可以使用下面的代码:
((CMainFrame*)AfxGetMainWnd())->PostMessage(WM_XXX);
或
((CMainFrame*)AfxGetMainWnd())->SendMessage(WM_XXX);
(1)在 resource.h 或 stdax.h 文件添加如下代码定义一个自己的消息:
#define WM_MY_MESSAGE WM_USER +1
(2)在消息处理函数所在的类的头文件中添加如下代码:
//{{AFX_MSG(C...)
afx_msg ........
afx_msg ........
afx_msg void OnMyMessage(/*WPARAM wParam, LPARAM lParam*/);//参数有无根据实际情况而定
//}}AFX_MSG
DECLARE_MESSAGE_MAP( )
(3)在消息处理函数所在的类的cpp文件中添加如下代码:
BEGIN_MESSAGE_MAP(... , ...)
//{{AFX_MSG_MAP(CPostmessageView)
ON_COMMAND .......
ON_MESSAGE(WM_MY_MESSAGE, OnMyMessage)
//}}AFX_MSG_MAP
......
END_MESSAGE_MAP()
(4)在消息处理函数所在的类的cpp文件中手动添加消息相应函数代码:
void CPostmessageView::OnMyMessage(/*WPARAM wParam, LPARAM lParam*/)
{
........
........
}
(5)在需要发送消息的地方添加代码:
PostMessage(WM_MY_MESSAGE);
或
SendMessage(WM_MY_MESSAGE);
2.从一个类向MainFrame类发送自定义消息
直接使用PostMessage或SendMessage函数只能向函数所在的类发送消息,如果想向MainFrame类发送消息,可以使用下面的代码:
((CMainFrame*)AfxGetMainWnd())->PostMessage(WM_XXX);
或
((CMainFrame*)AfxGetMainWnd())->SendMessage(WM_XXX);
0 0
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- 自定义消息
- App自适应draw9patch不失真背景
- Spring <context:annotation-config/> 解说
- 开启我的CSDN
- web导航模块
- java在指定目录下执行dos命令或者bat文件
- 自定义消息
- 实验室第十二章工作报告
- php网页采集 修正版
- HDU~1272~小希的迷宫
- hdu 5023 A Corrupt Mayor's Performance Art(线段树区间更新)
- LNK1123: 转换到 COFF 期间失败: 文件无效或损坏
- 【Java.NIO】API —— Channel接口
- C#中重写、重载、隐藏的关系
- C++程序中打印错误信息和标准错误流stderr