如何截获一个由默认的函数进行处理的消息?
只要在截获这个消息后,由自己的函数进行处理完后,在接着写一句:
return TRUE;
就可以了,这样这个消息就返回了个TRUE,不会继续处理这个消息
BOOL CMainFrame::OnCommand(WPARAM wParam, LPARAM lParam)
{
// TODO: 在此添加专用代码和/或调用基类
int MenuCmdId = LOWORD(wParam);
CMenu2View *pView = (CMenu2View*)GetActiveView();
if (MenuCmdId >= ID_NEW_1&&MenuCmdId < ID_NEW_1 + pView->m_strArray.GetSize())
{
CClientDC dc(pView);
dc.TextOutW(0, 0, pView->m_strArray.GetAt(MenuCmdId - ID_NEW_1));
//MessageBox(_T("TEST"));
<span style="color:#ff0000;">return TRUE;</span>
};
return CFrameWnd::OnCommand(wParam, lParam);
}
附上Command的参数解释
CWnd::OnCommand