如题:CBrush* aBrush = new CBrush(RGB(255, 0, 0));
pDC->SelectObject(aBrush);
pDC->Arc(... ...)怎么画不出来填充的效果?请高手指点一下。

解决方案 »

  1.   

    怎么用画刷填充封闭区域?
    封闭区域!!!!!!!!!!!!!!!!!!!!!用Arc画的不是封闭区域,而是一条弧线
    用Pie可以Pie画的是封闭区域OnDraw中的
             CBrush brush(RGB(0,255,0));
    CBrush *pOldBrush=pDC->SelectObject(&brush);
    CRect rect(100,200,500,500);
    CPoint ptStart(500,350);
    CPoint ptEnd(300,300);
    pDC->Pie(rect,ptStart,ptEnd);
    pDC->SelectObject(pOldBrush);
      

  2.   

    ARC可以不是可以画出封闭区域么?
    CDC::Arc(LPCRECT lpRect, POINT ptStart, POINT ptEnd)
    如果ptStart 和 ptEnd相等,那画出的不就是封闭区域么?
    这个我已经在OnDraw中实验过了,是可以画出来一个完整的圆的啊。
      

  3.   

    Arc是画弧线,就是只画边缘线,Pie是画扇形,即不光画边缘,还填充内部,是一个实心的扇形,这样说你明白了吗,它们的参数相似,不过一个画空心图,一个画实心图
      

  4.   

    from the name of the function you can guess the meanings. Arc() function just can let you draw a closed line, but Pie() can make a cover :)