大家看我的思路对不对:定义全局变量CPoint origin;
再函数中定义CPoint point;获得鼠标当前的位置
然后origin=point;将鼠标位置复制给origin这样我再调用其他函数的时候使用origin就可以得到刚才鼠标的位置了,
可是运行到origin=point后,origin没有被赋值,又使用origin的函数自然也就通不过,怎么没有思路呢

解决方案 »

  1.   

    origin没赋值不就是point为赋值吗  你怎么获取point的呢 ??
      

  2.   

    你如果是用的 WM_XBUTTON(DWON/UP)  WM_MOUSEMOVE 这些消息的消息处理函数,它们的函数参数就有一个CPoint 对象保存了鼠标位置。 还可以用GetMousePosition来得到鼠标位置。 至于你为什么没得到,帖出来你代码吧
      

  3.   

    Use this operator to offset CPoint by a CPoint or CSize object, or to offset a CRect by a CPoint. 
    CPoint operator +(
       SIZE size 
    ) const throw( );
    CPoint operator +(
       POINT point 
    ) const throw( );
    CRect operator +(
       const RECT* lpRect 
    ) const 
     CPoint   ptStart(100, 100);
    CSize   szOffset(35, 35);
    CPoint   ptEnd;ptEnd = ptStart + szOffset;CPoint   ptResult(135, 135);ASSERT(ptResult == ptEnd);// also works on SIZEptStart = CPoint(100, 100);SIZE   sz;
    sz.cx = 35;
    sz.cy = 35;ptEnd = ptStart + sz;ASSERT(ptResult == ptEnd);   msdn上面的
      

  4.   

    Cpoint point1 ,point2;
    point1=point2;这句话是正确的,至于你的origin没有值,你得检查下你的 point这个变量取到值了吗
      

  5.   

    主要还是看你在什么函数里面对你的point赋值的
      

  6.   

    楼主为什么不用 GetCursorPos  这个函数?
      

  7.   

    point.x = origin.x;
    point.y = origin.y;
      

  8.   

    首先定义全局变量 origin,并在构造函数中初始化为0
    在响应鼠标函数 onMouseLButtonDown(nflag,CPoint point )中有一个参数 CPoint point,这个参数保存的就是当前鼠标的坐标   origin=point,这样在响应鼠标函数体里赋给origin就可以了CPoint origin;//定义一个全局变量
    然后 
    void CdrawView::OnLButtonDown(UINT nFlags, CPoint point)
    {
    // TODO: 在此添加消息处理程序代码和/或调用默认值
    origin=point;
    SetCapture();
    CView::OnLButtonDown(nFlags, point);
    }