例如:将录音数据由录音操作类传递给窗口类来显示录音波形图
非窗口类为CSoundBase,窗口类为CDaexp4Dlg
在CSoundBase中发送消息
PostMessage(m_wnd, WM_MYMESSAGE,dwBytesRecorded,(LPARAM)pSaveBuffer);
其中m_wnd是在SoundBase.h中定义的HWND m_wnd;标识要发送给哪个窗口消息,这个窗口句柄由函数Record(TEXT("waveTest.wav"),&waveFormat,pWnd->GetSafeHwnd())的第四个参数传入CSoundBase类,其中CDaexp4Dlg* pWnd=(CDaexp4Dlg*)AfxGetMainWnd();
WM_MYMESSAGE是在stdafx.h中宏定义的一种消息#define WM_MYMESSAGE WM_USER+100;
daexp4Dlg.cpp文件中的
BEGIN_MESSAGE_MAP(CDaexp4Dlg, CDialog)
//{{AFX_MSG_MAP(CDaexp4Dlg)
ON_MESSAGE(WM_MYMESSAGE,OnCardMessage) //消息响应函数
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
添加消息响应函数。还要在daexp4Dlg.h文件中声明此函数afx_msg LRESULT OnCardMessage(WPARAM wParam, LPARAM lParam);