void C3Dlg::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
if (nFlags == MK_LBUTTON)
{
dc->MoveTo(pt);
dc->LineTo(point.x , point.y );
}
pt = point;
CDialogEx::OnMouseMove(nFlags, point);
}
请问下这个程序如果把 PT=POINT,放在前面会出现,画快了成虚线了的情况
请问下是什么原理呀?
划线那段是从上次的点的位置滑道这次点的位置,既从pt画到point,你把pt在前面赋值了岂不是上次点的位置和这次点的位置一样了。
pt = point;这个用来为下次划线保存一个划线的起点,当然是先划线,再设置,否则它被 point 覆盖了。
MoveTo 只需在LBUTTONDOWN 调用就可以了 之后全是LineTo就行了