BOOL Pie(                    //设备句柄
          int nLeftRect,     //包含整个椭圆的矩形的左上角x座标
          int nTopRect,      //包含整个椭圆的矩形的左上角y座标
          int nRightRect,    //包含整个椭圆的矩形的右下角x座标
          int nBottomRect,   //包含整个椭圆的矩形的右下角y座标
          int nYRadial1,     //起点半径的点的y座标
          int nXRadial2,     //终点半径的点的x座标
          int nYRadial2      //终点半径的点的y座标
);                      
这个是参数不知道画圆他的各参数之间的大小比例该是多少的呢
试了好几次都没有画出来!郁闷~
希望知道的朋友说一下下啊!

解决方案 »

  1.   

    我用的这个:
    // 画圆 -- 矩形作参数
    void CMemDraw::DrawCircle(CDC *pDC, CRect rect, COLORREF clr, BOOL bFill, int nPenStyle, int nPenWidth)
    {
    CPen    Pen(nPenStyle, nPenWidth, clr);
    CPen*   pOldpen = pDC->SelectObject(&Pen);
    CBrush  Brush(clr);
    CBrush* pOldBrush;

    if(bFill) // 填充
    pOldBrush = (CBrush*)pDC->SelectObject(&Brush);
    else
    pOldBrush = (CBrush*)pDC->SelectStockObject(NULL_BRUSH);

    pDC->Pie(&rect, ptCenter, ptCenter); // 可填充圆

    pDC->SelectObject(pOldpen);
    pDC->SelectObject(pOldBrush);
    Pen.DeleteObject();
    }
      

  2.   

    void CMemDraw::DrawCircle()是我自定义的函数,在函数内部调用Pie()
    自定义的函数的参数如下:
    CDC *pDC//设备句柄
    CRect rect//矩形区:相当于左、上、右、下坐标
    COLORREF clr//颜色
    BOOL bFill//是否要填充颜色:是画圆的边框,还是画实圆
    int nPenStyle//画笔风格
    int nPenWidth//画笔宽度pDC->Pie(&rect, ptCenter, ptCenter); // 可填充圆 
    是画圆的语句,当rect为正方形时画的是圆,否则为椭圆