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#的事件驅動機制對比
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.