MyException - 我的异常网
当前位置:我的异常网» VC/MFC » 花屏了!花屏了.解决思路

花屏了!花屏了.解决思路(2)

www.myexceptions.net  网友分享于:2013-04-10  浏览:58次

      rc.right += OUTPUT_INTERVAL/2; rc.bottom += OUTPUT_INTERVAL/2; //这里是不是超出了区域?

      CDC *pDC = pWnd->GetDC();
      ASSERT(pDC);
      CBrush *pOldBrush = (CBrush *)pDC->SelectStockObject(NULL_BRUSH); 
      CPen *pOldPen = pDC->SelectObject(&pPen);
      pDC->Rectangle(&rc);
      
      pDC->SelectObject(pOldPen);
      pDC->SelectObject(pOldBrush);
      
      pWnd->ReleaseDC(pDC); 
    }
  }

------解决方案--------------------
花瓶 你还调试!!

肯定是根据那个rect 花掉了

然后zaionpaint中处理啊
------解决方案--------------------
你在对话框的OnPaint消息中去绘制其他控件,本身就是错误的,破坏了正常绘制顺序,出现任何错误、花屏都是应该的,正确的方式就是8楼,要在哪个控件中绘图就在该控件自身的刷新函数中去绘制;另外GetDC和ReleaseDC要对应,从哪个窗口GetDC就从要对那个个窗口ReleaseDC,而你不是。

错误的逻辑造成任何异常都不奇怪。

文章评论

软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有