1.消息申明
#define WM_CUTTERSTART (WM_USER+1) //多了个分号 #define WM_CUTTERSTOP (WM_USER+2) #define WM_CUTTERSTATUS (WM_USER+3)
2.添加消息映射(BEGIN_MESSAGE_MAP END_MESSAGE_MAP之间)
ON_MESSAGE(WM_CUTTERSTART, OnCutterStart)
ON_MESSAGE(WM_CUTTERSTATUS,OnCutterStatus)
ON_MESSAGE(WM_CUTTERSTOP,OnCutterStop)
3消息处理函数
LRESULT CFileApartDlg::OnCutterStart(WPARAM wParam, LPARAM lParam) { int nTotalFiles = wParam; m_Progress.SetRange(0, nTotalFiles); UIControl(); return 0; } LRESULT CFileApartDlg::OnCutterStatus(WPARAM wParam, LPARAM lParam) { int nCompleted = (int)lParam; m_Progress.SetPos(nCompleted); CString s; s.Format(_T("完成%d个文件"), nCompleted); GetDlgItem(IDC_STATUSTEXT)->SetWindowText(s); return 0; } LRESULT CFileApartDlg::OnCutterStop(WPARAM wParam, LPARAM lParam) { int nErrorCode = wParam; switch (nErrorCode) { case CFileCutter::exitSuccess: MessageBox(_T("操作成功完成"),_T("完成")); break; case CFileCutter::exitSourceErr: MessageBox(_T("源文件出错"), _T("失败")); break; case CFileCutter::exitDestErr: MessageBox(_T("目标文件出错"), _T("失败")); break; case CFileCutter::exitUserForce: MessageBox(_T("用户终止"), _T("失败")); break; } return 0; }