“static_cast”: 无法从“LRESULT (__thiscall CMFCmapDoc::* )(WPARAM,LPARAM)”转换为“LRESULT (__thiscall CWnd::* )(WPARAM,LPARAM)”我这样使用了:在头文件中:
================================
// 生成的消息映射函数
protected:
DECLARE_MESSAGE_MAP()public:
LRESULT afx_msg OnMyMessage(WPARAM,LPARAM);
===================================
在CPP文件中:================================================BEGIN_MESSAGE_MAP(CMFCmapDoc, CDocument)
ON_MESSAGE(WM_MYMESSAGE, &CMFCmapDoc::OnMyMessage)
END_MESSAGE_MAP()LRESULT CMFCmapDoc::OnMyMessage(WPARAM,LPARAM)
{
::AfxMessageBox(L"我是DOC,已经收到消息");
}是在CDocument类中,怎么还有错误,望指点
================================
// 生成的消息映射函数
protected:
DECLARE_MESSAGE_MAP()public:
LRESULT afx_msg OnMyMessage(WPARAM,LPARAM);
===================================
在CPP文件中:================================================BEGIN_MESSAGE_MAP(CMFCmapDoc, CDocument)
ON_MESSAGE(WM_MYMESSAGE, &CMFCmapDoc::OnMyMessage)
END_MESSAGE_MAP()LRESULT CMFCmapDoc::OnMyMessage(WPARAM,LPARAM)
{
::AfxMessageBox(L"我是DOC,已经收到消息");
}是在CDocument类中,怎么还有错误,望指点
文档不是可以接收ON_MESSAGE消息吗
文档类并不是窗口,之所以能接收COMMAND消息,是因为View类调用了文档类的OnCmdMsg消息处理函数。在文档类相关的视图类去响应自定义消息。