MFC的CFrameWnd::OnCmdMsg消息链路

来源:互联网 发布:mac os 10.12 懒人版 编辑:程序博客网 时间:2024/05/17 09:35

首先是视图类,其次是窗口类,然后是应用程序类。下面的源码为证。

BOOL CFrameWnd::OnCmdMsg(UINT nID, int nCode, void* pExtra,
 AFX_CMDHANDLERINFO* pHandlerInfo)
{
 CPushRoutingFrame push(this);

 // pump through current view FIRST
 CView* pView = GetActiveView();
 if (pView != NULL && pView->OnCmdMsg(nID, nCode, pExtra, pHandlerInfo))
  return TRUE;

 // then pump through frame
 if (CWnd::OnCmdMsg(nID, nCode, pExtra, pHandlerInfo))
  return TRUE;

 // last but not least, pump through app
 CWinApp* pApp = AfxGetApp();
 if (pApp != NULL && pApp->OnCmdMsg(nID, nCode, pExtra, pHandlerInfo))
  return TRUE;

 return FALSE;
}

原创粉丝点击