在VC++中想加入自定義消息,以下方法可供參考 ……
1、首先定義消息:
[cpp] view plaincopyprint?
- #define WM_MYMESSAGE (WM_USER+100)
#define WM_MYMESSAGE (WM_USER+100)
2、在.h頭檔案中,加入消息響應函數:
- LONG OnMyMessage(WPARAM wParam, LPARAM lParam);
LONG OnMyMessage(WPARAM wParam, LPARAM lParam);
該函數有規定的格式:
- LONG Function_Name(WPARAM wParam, LPARAM lParam);
LONG Function_Name(WPARAM wParam, LPARAM lParam);
3、加入消息響應宏
在響應該消息的類中,在消息響應塊中
- BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
- //{{AFX_MSG_MAP(CAboutDlg)
- // No message handlers
- //}}AFX_MSG_MAP
- END_MESSAGE_MAP()
BEGIN_MESSAGE_MAP(CAboutDlg, CDialog)
//{{AFX_MSG_MAP(CAboutDlg)
// No message handlers
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
加入以下語句:
- ON_MESSAGE(WM_MYMESSAGE, OnMyMessage)
ON_MESSAGE(WM_MYMESSAGE, OnMyMessage)
成為如下樣式:
- ON_MESSAGE(WM_MYMESSAGE,OnMyMessage)
- END_MESSAGE_MAP()
ON_MESSAGE(WM_MYMESSAGE,OnMyMessage)
END_MESSAGE_MAP()
4、在.cpp源檔案中,編輯消息響應函數:
- LONG CMyClass::OnMyMessage(WPARAM wParam, LPARAM lParam)
- {
- // Do something
- ........
- }
LONG CMyClass::OnMyMessage(WPARAM wParam, LPARAM lParam)
{
// Do something
........
}