没有甚末实际意义,纯属学术讨论.

解决方案 »

  1.   

    是这样吗?
    CBrush brush;
    pdc->SelectObject(&brush);
    CRect r(100,100,300,300);
    pdc->Rectangle(&r);
    brush.DeleteObject();
    不能漏出背景。
      

  2.   

    你首先SETBKMODE()当然是设置为透明的那种//参数自己查MSDN
    然后画一个圈,就可以了
      

  3.   

    CBrush brush;
    brush.crea...(NULLBRUSH)
    pdc->SelectObject(&brush);
    CRect r(100,100,300,300);
    pdc->Rectangle(&r);
    brush.DeleteObject();
      

  4.   

    当你用Pie的时候,系统会使用当前默认的刷子来填充背景,一般来说来说是白色,所以在使用之前你可以为HDC选择一个背景刷子,例如:
    CBrush bkBrush(::GetSysColor(COLOR_BTNFACE));//填充色和背景色相同
    pdc->SelectObject(&bkBrush);
    pdc->Pie();
    这样就可以了