大家看我的思路对不对:定义全局变量CPoint origin;
再函数中定义CPoint point;获得鼠标当前的位置
然后origin=point;将鼠标位置复制给origin这样我再调用其他函数的时候使用origin就可以得到刚才鼠标的位置了,
可是运行到origin=point后,origin没有被赋值,又使用origin的函数自然也就通不过,怎么没有思路呢
再函数中定义CPoint point;获得鼠标当前的位置
然后origin=point;将鼠标位置复制给origin这样我再调用其他函数的时候使用origin就可以得到刚才鼠标的位置了,
可是运行到origin=point后,origin没有被赋值,又使用origin的函数自然也就通不过,怎么没有思路呢
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上面的
point1=point2;这句话是正确的,至于你的origin没有值,你得检查下你的 point这个变量取到值了吗
point.y = origin.y;
在响应鼠标函数 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);
}