CBrush myBrush(RGB(0,0,0));
myBrush.m_hObject=GetStockObject(NULL_BRUSH);
CBrush *pOldBrush=pDC->SelectObject(&myBrush);
//.........此处画图
pDC->SelectObject(pOldBrush);
myBrush.DeleteObject();/*用上面的方法发现使用的GDI对象不停的上升,后来改成了下面的方法*/
pDC->SelectStockObject(NULL_BRUSH);//这样改了以后问题不存在了,我想知道第一种方法出现问题的原因是什么。谢谢大家还有个关于整数比较大小的算法问题,麻烦大家帮我看看啊
http://topic.csdn.net/u/20090627/08/2ddf42d6-69d9-4d49-be46-e7a1cac44061.html

解决方案 »

  1.   

    CBrush myBrush(RGB(0,0,0));   //这样初始化已经有一个brush了, 下一句 myBrush.m_hObject=GetStockObject(NULL_BRUSH); 赋值的时候就把现在的brush丢失了=> CBrush myBrush;
      

  2.   


    顶...初始化的brush没有被删除...
      

  3.   

    myBrush.m_hObject=GetStockObject(NULL_BRUSH);
    根本不必要嘛,有了它反而出现GDI对象不停的上升
      

  4.   

    大家讲的对  不应该对CBrush进行初始化