要在MFC应用程序中发送消息给主窗口,可以使用AfxGetMainWnd函数获取主窗口的指针,然后调用PostMessage或SendMessage函数发送消息。
例如,可以使用以下代码在MFC应用程序中发送自定义消息给主窗口:
// 获取主窗口指针
CWnd* pMainWnd = AfxGetMainWnd();
// 发送消息给主窗口
UINT msg = WM_USER + 1; // 自定义消息
pMainWnd->PostMessage(msg, 0, 0);
在主窗口类的消息映射函数中可以处理这个自定义消息,例如:
BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
ON_MESSAGE(WM_USER + 1, OnCustomMessage)
END_MESSAGE_MAP()
LRESULT CMainFrame::OnCustomMessage(WPARAM wParam, LPARAM lParam)
{
// 处理自定义消息
return 0;
}
通过这种方法,可以在MFC应用程序中轻松地发送消息给主窗口,并在主窗口类中处理这些消息。