我在发送消息窗口MyMessageDlg1.h中,定义#define WM_MY_MESSAGE (WM_USER+100),然后在一个button中这样写
void CMyMessageDlg1::OnButtonTest()
{
PostMessage(WM_MY_MESSAGE, 0, 0);
}
在接收窗口MyMessageDlg2.h中也定义了#define WM_MY_MESSAGE (WM_USER+100)
并定义消息映射函数
protected:
// Generated message map functions
//{{AFX_MSG(CMyMessageDlg2)
virtual BOOL OnInitDialog();
afx_msg LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
在MyMessageDlg2.cpp中声明
BEGIN_MESSAGE_MAP(CMyMessageDlg2, CDialog)
/{{AFX_MSG_MAP(CMyMessageDlg2)
ON_MESSAGE(WM_MY_MESSAGE, OnMyMessage)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
并添加函数
LRESULT CMyMessageDlg2::OnMyMessage(WPARAM wParam, LPARAM lParam)
{
AfxMessageBox("OnMyMessage!");
return 0;
}
但是为什么点击yMessageDlg1的test按钮没有弹出OnMyMessage!呢?
void CMyMessageDlg1::OnButtonTest()
{
PostMessage(WM_MY_MESSAGE, 0, 0);
}
在接收窗口MyMessageDlg2.h中也定义了#define WM_MY_MESSAGE (WM_USER+100)
并定义消息映射函数
protected:
// Generated message map functions
//{{AFX_MSG(CMyMessageDlg2)
virtual BOOL OnInitDialog();
afx_msg LRESULT OnMyMessage(WPARAM wParam, LPARAM lParam);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
在MyMessageDlg2.cpp中声明
BEGIN_MESSAGE_MAP(CMyMessageDlg2, CDialog)
/{{AFX_MSG_MAP(CMyMessageDlg2)
ON_MESSAGE(WM_MY_MESSAGE, OnMyMessage)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
并添加函数
LRESULT CMyMessageDlg2::OnMyMessage(WPARAM wParam, LPARAM lParam)
{
AfxMessageBox("OnMyMessage!");
return 0;
}
但是为什么点击yMessageDlg1的test按钮没有弹出OnMyMessage!呢?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货