在MFC中,发送并处理自定义消息

第一步:定义消息。开发Windows95应用程序时,Microsoft推荐用户自定义消息至少是WM_USER+100,因为很多新控件也要使用WM_USER消息。 

第二步:实现消息处理函数。该函数使用WPRAM 和 LPARAM 参数并返回LPESULT。 

LPESULT   CMainFrame::OnMyMessage(WPARAM   wParam,   LPARAM   lParam) 

//   TODO:   处理用户自定义消息 
  ... 
  return   0; 

第三步:在类头文件的AFX_MSG块中说明消息处理函数: 

class   CMainFrame:public   CMDIFrameWnd 

... 
//   一般消息映射函数 
protected: 
//   {{AFX_MSG(CMainFrame) 
afx_msg   int   OnCreate(LPCREATESTRUCT   lpCreateStruct); 
afx_msg   void   OnTimer(UINT   nIDEvent); 
afx_msg   LRESULT   OnMyMessage(WPARAM   wParam,   LPARAM   lParam); 
//}}AFX_MSG 
DECLARE_MESSAGE_MAP() 

第四步:在用户类的消息块中,使用ON_MESSAGE宏指令将消息映射到消息处理函数中。 

BEGIN_MESSAGE_MAP(CMainFrame,   CMDIFrameWnd) 
//{{AFX_MSG_MAP(CMainFrame) 
ON_WM_CREATE() 
ON_WM_TIMER() 
ON_MESSAGE(WM_MY_MESSAGE,   OnMyMessage) 
//}}AFX_MSG_MAP 
END_MESSAGE_MAP() 

你可能感兴趣的:(timer,windows,user,Microsoft,Class,mfc)