1 在cpp里面添加下面定义
#ifdef _DEBUG
#define new DEBUG_NEW
#endif
#define WM_MY_DEFINED_MSG (WM_USER + 101)
#define MY_REGISTERED_MSG_STR _T("MY_MSG_STRING")
UINT WM_MY_REGISTERED_MSG;
在头文件里面添加
LRESULT OnMyRegisteredMsg(WPARAM wParam, LPARAM lParam);
2 在dlg的构造函数里面增加下面代码
WM_MY_REGISTERED_MSG = RegisterWindowMessage(MY_REGISTERED_MSG_STR);
3 在cpp里面添加下面的映射
ON_MESSAGE(WM_MY_DEFINED_MSG, &CDemoDlg::OnMyDefinedMsg)
ON_REGISTERED_MESSAGE(WM_MY_REGISTERED_MSG,&CDemoDlg::OnMyRegisteredMsg)
4 代码实现
void CDemoDlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
PostMessage(WM_MY_DEFINED_MSG,0,0);
}
LRESULT CDemoDlg::OnMyDefinedMsg(WPARAM wParam, LPARAM lParam)
{
TCHAR szBuf[128] = {0};
_stprintf(szBuf,_T("收到自定义消息: WM_MY_DEFINED_MSG,ID=0x%X."),WM_MY_DEFINED_MSG);
SetDlgItemText(IDC_OUTPUT,szBuf);
return 0;
}
LRESULT CDemoDlg::OnMyRegisteredMsg(WPARAM wParam, LPARAM lParam)
{
TCHAR szBuf[128] = {0};
_stprintf(szBuf,_T("收到Registered消息: WM_MY_REGISTERED_MSG,ID=0x%X."),WM_MY_REGISTERED_MSG);
SetDlgItemText(IDC_OUTPUT,szBuf);
return 0;
}
void CDemoDlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
PostMessage(WM_MY_REGISTERED_MSG,0,0);
}