C++中MFC的消息映射机制类似C#的事件驱动机制。对比如下:
C++:函数原型,函数实现,用来关联消息和消息响应函数的宏。
C#: 编写处理函数(相当于C++的前两个),注册事件(相当于C++的最后一个)。
C++实例:
//头文件CMFCTestView.h
// Generated message map functions
protected:
//{{AFX_MSG(CMFCTestView)
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
//源文件CMFCTestView.c
void CMFCTestView::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
//MessageBox("View Clicked!");
m_ptOrigin=point;
CView::OnLButtonDown(nFlags, point);
}
//源文件CMFCTestView.c
BEGIN_MESSAGE_MAP(CMFCTestView, CView)
//{{AFX_MSG_MAP(CMFCTestView)
ON_WM_LBUTTONUP()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
C++中MFC的消息映射机制与C#的事件驱动机制对比
最新推荐文章于 2024-07-22 11:38:16 发布