读书人

用vs2005做类似windows自带的画板解决

发布时间: 2012-02-08 19:52:21 作者: rapoo

用vs2005做类似windows自带的画板
void CpainterView::OnMouseMove(UINT nFlags, CPoint point)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CpainterApp *app=(CpainterApp*)AfxGetApp();
if(app-> flag==1)
{
CClientDC dc(this); /*设定当前用户工作环境*/
endpt.x=point.x;
endpt.y=point.y; /*将鼠标移动的当前位置为结束点*/
if(startpt.x != -1) /*保证起始点为鼠标左键按下的位置*/
{dc.MoveTo(startpt.x,startpt.y);
dc.LineTo(endpt.x,endpt.y); /*从startpt位置开始到endpt位置画线操作*/
startpt.x=endpt.x;
startpt.y=endpt.y; /*画完线后将当前的endpt值赋给变量startpt,即从当前的endpt位置继续画线,直到鼠标不再移动并左键抬起为止*/
}
}

167行  if(app-> flag==4)
{
CClientDC dc(this); /*设定当前用户工作环境*/
endpt.x=point.x;
endpt.y=point.y; /*将鼠标移动的当前位置为结束点*/
if(startpt.x != -1) /*保证起始点为鼠标左键按下的位置*/
{dc.MoveTo(startpt.x,startpt.y);
dc.Ellipse(startpt.x,startpt.y,endpt.x,endpt.y); /*从startpt位置开始到endpt位置画线操作*/
startpt.x=endpt.x;
startpt.y=endpt.y; /*画完线后将当前的endpt值赋给变量startpt,即从当前的endpt位置继续画线,直到鼠标不再移动并左键抬起为止*/
}
}

CView::OnMouseMove(nFlags, point);

}

这段代码的出现的错误
错误167行error C3872: “0x3000”: 此字符不允许在标识符中使用
错误167行error C3872: “0x3000”: 此字符不允许在标识符中使用
错误168行error C2143: 语法错误 : 缺少“;”(在“{”的前面)
错误167行error C3861: “  if”: 找不到标识符





[解决办法]
167行  if(app-> flag==4)
这个if前面是不是有空字符啊~???

读书人网 >VC/MFC

热点推荐