這段時間看vc++深入詳解.看到添加自定義消息那一節,按照書上的方法就是編譯不通過.vc6.0和vs2008中添加消息的方法不同.現在就把添加自定義消息的方法記錄下來
紅色標記的地方爲不同之處.
1.定義消息
#define UM_PROGRESS WM_USER+1
2.類頭文件中聲明消息響應函數(OnProgress)
vc6.0聲明如下
afx_msg void OnProgress();
vs2008聲明如下:
afx_msg LRESULT OnProgress(WPARAM wparam,LPARAM lparam);
3.消息映射(消息映射用ON_MESSAGE,命令映射用ON_COMMAND)
在消息映射表中添加映射.在宏BEGIN_MESSAGE_MAP()和END_MESSAGE_MAP()之間
vc6.0如下
ON_MESSAGE(UM_PROGRESS,OnProgress)
vs2008如下:
ON_MESSAGE(UM_PROGRESS,CMainFrame::OnProgress)
4.定義消息響應函數
LRESULT CMainFrame::OnProgress(WPARAM wparam,LPARAM lparam)
{
}