mfc单文档画图,怎么样“重绘”?
玩了一个礼拜的程序在这里:http://pan.baidu.com/s/1hrNCTec窗口变化的时候原来画的线条就没有了,怎样始终显示?就像开始程序-附件-画图那样。有...
玩了一个礼拜的程序在这里:http://pan.baidu.com/s/1hrNCTec
窗口变化的时候原来画的线条就没有了,怎样始终显示?就像开始程序-附件-画图那样。
有没有专门讲这一类画图的书?
图像选择是不是也顺带在这一功能?
http://www.cnblogs.com/liwenbin/archive/2012/07/11/2586345.html 展开
窗口变化的时候原来画的线条就没有了,怎样始终显示?就像开始程序-附件-画图那样。
有没有专门讲这一类画图的书?
图像选择是不是也顺带在这一功能?
http://www.cnblogs.com/liwenbin/archive/2012/07/11/2586345.html 展开
1个回答
展开全部
可以利用函数SetROP2:
CPoint m_ptBegin; //起始点
CPoint m_ptOrigon; //前一个点
OnLButtonDown中
m_ptBegin = m_ptOrigon = point;
OnMouseMove中
CClientDC dc(this);
CPen pen;
pen.CreatePen(PS_SOLID,1,RGB(255,0,0));
CPen * pOldPen = dc.SelectObject(&pen);
if(point != m_ptOrigon)
{
dc.SetROP2(R2_NOTXORPEN);
dc.MoveTo(m_ptBegin);
dc.LineTo(m_ptOrigon);
dc.MoveTo(m_ptBegin);
dc.LineTo(point);
m_ptOrigon = point;
}
CPoint m_ptBegin; //起始点
CPoint m_ptOrigon; //前一个点
OnLButtonDown中
m_ptBegin = m_ptOrigon = point;
OnMouseMove中
CClientDC dc(this);
CPen pen;
pen.CreatePen(PS_SOLID,1,RGB(255,0,0));
CPen * pOldPen = dc.SelectObject(&pen);
if(point != m_ptOrigon)
{
dc.SetROP2(R2_NOTXORPEN);
dc.MoveTo(m_ptBegin);
dc.LineTo(m_ptOrigon);
dc.MoveTo(m_ptBegin);
dc.LineTo(point);
m_ptOrigon = point;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询