vc SendMessage怎样自定义发送消息
在头文件里#defineWM_MYMSGWM_USER+5//自定义一个消息afx_msgvoidOnMyMessage(WPARAMwParam,LPARAMlPara...
在头文件里
#define WM_MYMSG WM_USER+5 //自定义一个消息
afx_msg void OnMyMessage(WPARAM wParam, LPARAM lParam); //自定义消息的处理函数声明
在.cpp文件里
ON_MESSAGE(WM_MYMSG, OnMyMessage)
//利用ON_MESSAGE()宏在自定义消息与其处理函数间建立映射关系
void CModelessDlg::OnMyMessage(WPARAM wParam, LPARAM lParam)
//从lParam中取出CString对象的指针,并将字符串内容在IDC_MSGEDIT中显示出来
{
CString *str;
str=(CString *)lParam;
SetDlgItemText(IDC_EDIT,*str);
}
按下按钮发送消息
void CModelessDlg::OnMsgBTN()
{
CString str= "自定义消息被触发了!";
SendMessage(WM_MYMSG, 0, (LPARAM) &str);
//给ModelessDlg自己发一个自定义的消息
}
在vs2012中编译,ON_MESSAGE(WM_MYMSG, OnMyMessage)提示错误,到底哪里错了,帮我啊 展开
#define WM_MYMSG WM_USER+5 //自定义一个消息
afx_msg void OnMyMessage(WPARAM wParam, LPARAM lParam); //自定义消息的处理函数声明
在.cpp文件里
ON_MESSAGE(WM_MYMSG, OnMyMessage)
//利用ON_MESSAGE()宏在自定义消息与其处理函数间建立映射关系
void CModelessDlg::OnMyMessage(WPARAM wParam, LPARAM lParam)
//从lParam中取出CString对象的指针,并将字符串内容在IDC_MSGEDIT中显示出来
{
CString *str;
str=(CString *)lParam;
SetDlgItemText(IDC_EDIT,*str);
}
按下按钮发送消息
void CModelessDlg::OnMsgBTN()
{
CString str= "自定义消息被触发了!";
SendMessage(WM_MYMSG, 0, (LPARAM) &str);
//给ModelessDlg自己发一个自定义的消息
}
在vs2012中编译,ON_MESSAGE(WM_MYMSG, OnMyMessage)提示错误,到底哪里错了,帮我啊 展开
1个回答
2015-08-21
展开全部
BEGIN_MESSAGE_MAP
END_MESSAGE_MAP
是不是没写在上面两个宏中间?
END_MESSAGE_MAP
是不是没写在上面两个宏中间?
追问
是写在中间啊,到底哪里错了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询