none
mfc的消息响应函数的一个问题 RRS feed

  • 问题

  • void CMainFrame::OnLButtonDown(UINT nFlags, CPoint point)
    {
    // TODO: 在此添加消息处理程序代码和/或调用默认值
    CFrameWnd::OnLButtonDown(nFlags, point);
    }
    在这个框架窗口中添加了一个消息响应的函数,我觉得很奇特,为什么每个消息响应函数最后都会有个
    默认的调用啊,首先CFrameWnd不一定定义了OnLButtonDown函数(虽然声明了)。
    我觉得很奇怪???
    我看了jjhou的书,但是好像里面没有写到这个???
    2011年10月28日 12:22

答案

  • 不调用默认的处理的话,消息就不会被Windows处理。这在你不想让Windows响应鼠标的时候可能有用,但是如果你要默认的行为(比如窗口激活、拖放等等),那么需要调用默认的窗口过程。

    The following is signature, not part of post
    Please mark the post answered your question as the answer, and mark other helpful posts as helpful, so they will appear differently to other users who are visiting your thread for the same problem.
    Visual C++ MVP
    2011年10月28日 15:30
    版主