目的实现一个很简单的画线功能,屏幕上点击两次,在这两点之间画出一条线段。以下是关键代码
int count = 0;
CPoint points[2];
void CMFCApplication1View::OnLButtonDown(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CDC *pDC = GetDC();
CPen pen(PS_SOLID, 1, RGB(255, 0, 0));
pDC->SelectObject(&pen);
if (count == 0) {
points[0] = point;
count++;
}
else{
points[1] = point;
pDC->LineTo(points[0]);
pDC->MoveTo(points[1]);
points[0] = (0, 0);
points[1] = (0, 0);
count = 0;
}
CView::OnLButtonDown(nFlags, point);
}
我用count记录点击的次数,每当点击两次以后就归零,把两次的鼠标坐标存在points数组里,画完一次再归零。然而运行结果如图,所有线段的一个端点都是左上角,请问改怎么修改代码?谢谢!