就用这个画的,然后 想清楚这条直线dc.MoveTo(pt_org);dc.LineTo(pt_act);

解决方案 »

  1.   

    比如说你的背景是白色,那么
    你想要清除某条线就
    dc.SelectStockObject(WHITE_PEN);
    dc.MoveTo(pt_org);
    dc.LineTo(pt_act);
    用白色再画一遍。
    这种方法只能用于简单的方面,图形和背景复杂一点不行了
      

  2.   

    窗口重绘或者用背景色brush 刷掉~~?可以么
      

  3.   

    AfxGetMainWnd()-> InvalidateRect(NULL,   TRUE);
      

  4.   

    用SetROP2或者记录没画前的dc然后覆盖上去
      

  5.   

    画以前设置画笔模式: SetROP2(R2_XORPEN);那么第一次画,出现线条,再画,就抹去了。因为他对像素点做的异或运算(同样像素值异或清0了)
      

  6.   

    repaint()的时候,先画背景,然后只画其他的element, 不画这条线就行了吧