你可以用spy++找个窗口试试了!!

解决方案 »

  1.   

    按下时收到WM_LBUTTONDOWN消息,移动时收到WM_MOUSEMOVE消息,松开后得到WM_LBUTTONUP消息,这并不矛盾啊。
      

  2.   

    任何两个消息都不可能同时处理的.
    鼠标按下的那一刻也只是处理WM_LBUTTONDOWN,处理完WM_LBUTTONDOWN,鼠标在按下状态移动则只处理WM_MOUSEMOVE.当然这只是讨论鼠标消息,可能还会有其他比如WM_TIMER消息等等
      

  3.   

    就是In355Hz和joke100说的那样,一般处理时,用一个成员变量,BOOL m_bLButtonDown记录mouse的状态,初始化为FALSE;
    OnLButtonDown()
    {
    ...
      m_bLButtonDown=TRUE; 
    ...
    }
    OnLButtonUp()
    {
    ...
      m_bLButtonDown=FALSE;    
    ...
    }OnMouseMove()
    {
    if(OnLButtonDown()
    {
      if(m_bLButtonDown)//处理按下状态
      {
      ....
      }
      else//处理非按下状态
      {
        ....
      } }
      

  4.   

    OnMouseMove()
    {
      if(m_bLButtonDown)//处理按下状态
      {
      ....
      }
      else//处理非按下状态
      {
        ....
      }