C++ mfc学习疑问(1)

近期由于工作较清闲,准备开发一个对工作有帮助的小模块,由于长期接触web,和java 对C++很不熟悉。

从头学起。看到使用CDC画图一课时生出疑问。

void CLession4View::OnMouseMove(UINT nFlags, CPoint point) 
{
 // TODO: Add your message handler code here and/or call default
 //画线
//  CClientDC dc(this);
//  if (m_bdraw)
//  {
//   dc.MoveTo(m_beginpoint);
//   dc.LineTo(point);
//   m_beginpoint=point;
//  }
 if (m_bdraw)
 {
  RECT lpRect;
  ::GetClientRect(m_hWnd, &lpRect);
  CClientDC dc(this);
  CBrush *pBrush=CBrush::FromHandle((HBRUSH)GetStockObject(WHITE_BRUSH));
  CBrush *PoldBrush=dc.SelectObject(pBrush);
  int hight = lpRect.bottom - lpRect.top;  
  int width = lpRect.right - lpRect.left;  
  dc.Rectangle(0,0,width,hight);
  //CClientDC dc(this);
  dc.Rectangle(CRect(m_beginpoint,point));
  dc.SelectObject(PoldBrush);

 }

  CView::OnMouseMove(nFlags, point);
}

由于我刷新全页面,使每次重画都是新的一张图,

请问各位,怎么实现重叠?(要求有画画轨迹,即画的过程中图形一直存在,并不是画完才出现的)

请各位解答

转载于:https://www.cnblogs.com/wangtingshun/archive/2012/08/29/2662345.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值