手把手教你手工添加消息的方法

来源:互联网 发布:炫酷网站首页源码 编辑:程序博客网 时间:2024/05/02 02:24
手把手教你手工添加消息的方法
1)新建工程Test(MFC),建立基于对话框(Dialog based)的工程,Finish.
2)在TestDlg.h文件中,添加
 /////////////////////////////////////////////////////////////////////////////
 // CTestDlg dialog
 #define WM_TEST WM_USER+300
3)在类CTestDlg.h中声明消息处理函数OnTest
 //}}AFX_MSG
 afx_msg LRESULT OnTest(WPARAM wParam,LPARAM lParam);
 DECLARE_MESSAGE_MAP()
4)在CTestDlg.cpp文件中添加映射,把消息和函数联系起来
 //}}AFX_MSG_MAP
 ON_MESSAGE(WM_TEST,OnTest)
END_MESSAGE_MAP()
5)在CTestDlg.cpp文件中添加消息处理函数
LRESULT CTestDlg::OnTest(WPARAM wParam,LPARAM lParam)
{
 MessageBox("六子的专栏  blog.csdn.net/wangjiwei2010");
 return 0;
}
调试一下成功 OK!
6)这样你就可以在使用的地方添加:
 SendMessage(WM_TEST);或者:PostMessage(WM_TEST);
 例如:在对话框上添加一按钮ID为IDC_OK,Caption为"OK",双击添加函数OnOK(),在函数中添加代码:
void CTestDlg::OnOK()
{
 SendMessage(WM_TEST);
 CDialog::OnOK();
}
OK!大功告成了!
注:SendMessage(WM_TEST)与PostMessage(WM_TEST)的区别是:前者发送消息后等待返回,而后者发送出去就不管了,立即返回.
 
原创粉丝点击