如何在视图中显示鼠标的当前位置

解决方案 »

  1.   

    在视图的OnMouseMove事件里可以得到鼠标的坐标,然后你在视图里TextOut就可以了嘛。
      

  2.   

    同意楼上,不过OnMouseMove事件里得到的坐标是屏幕坐标,如果要的是相对于视图区的逻辑坐标,还要转换一下:CClientDC dc(this);
    dc.DPtoLP( &point );
    CString str;
    str.Format( "%d, %d", point.x, point.y );
    dc.TextOut( 1,1, str );
      

  3.   

    如果你是写SDK,捕捉WM_MOUSEMOVE消息
    LOWORD(lParam)是横坐标,
    HIWORD(lParam)是纵坐标.
      

  4.   

    BOOL Info::PreTranslateMessage(MSG* pMsg) 
    {
    // TODO: Add your specialized code here and/or call the base class
    m_pt = pMsg->pt;
    }
    return CDialog::PreTranslateMessage(pMsg);
    }
    OnDraw()
    {
    textOut()
    }
      

  5.   

    CPoint pt;
    ::GetCursorPos(&pt);
    m_pTreeCtr.GetWindowRect(&rect);
    pt.x-=rect.left;
    pt.y-=rect.top;
    ::ScreenToClient(this->m_hWnd,&pt);
    在任意事件里响应都行!!
      

  6.   

    如果你是写SDK,捕捉WM_MOUSEMOVE消息
    LOWORD(lParam)是横坐标,
    HIWORD(lParam)是纵坐标.推荐!
    我算不算侵犯 火舞者 版权?
      

  7.   

    同意楼上的,我是再次侵犯 火舞者 版权,另加一句,在WM_PAINT用TextOut打出来