一个很简单的问题,我想画一个圆,打个比方我想显示一个班的男女比例各占多少,
用这个圆直观的表示出来,但是为什么这段圆总是填充不了颜色呢??(我已经设置了fillstyle
程序如下.
 With PicCircle
    .FillStyle = 0
    .DrawWidth = 2
    PicCircle.Circle (PicCircle.ScaleWidth / 2, PicCircle.ScaleHeight / 2), PicCircle.ScaleHeight / 3, vbGreen, 0, 6.28 * MD / All
    .FillColor = vbGreen
    PicCircle.Line (100, 80)-(500, 200), vbGreen, BF
    .CurrentX = 600
    .CurrentY = 100
    PicCircle.Print "买断用户共有" + "" & MD & "" + "人," + Chr(13) + Chr(10) + "       占总用户的" + "" & CInt(MD / All * 100) & "" + "%"
    PicCircle.Circle (PicCircle.ScaleWidth / 2, PicCircle.ScaleHeight / 2), PicCircle.ScaleHeight / 3, vbRed, 6.28 * MD / All, 6.28
    PicCircle.Line (100, 2400)-(500, 2520), vbRed, BF
    .CurrentX = 600
    .CurrentY = 2420
    PicCircle.Print "租借用户共有" + "" & ZJ & "" + "人," + Chr(13) + Chr(10) + "       占总用户的" + "" & CInt(ZJ / All * 100) & "" + "%"
    .FillColor = vbRed
  End With
MD 和 ZJ 就当做是男女之间的比例吧.
圆框出来了,也显示出了这个比例,但没有填充!!
请知道的相告!!
谢谢!!!

解决方案 »

  1.   

    同意楼上的,使用MSChart吧。很方便good luck.
      

  2.   

    给你参考
    Private Sub Command1_Click()
    Picture1.FillColor = RGB(0, 255, 0)
    Picture1.FillStyle = 0
    Picture1.Circle (3000, 3000), 2000, RGB(255, 0, 0)
    End Sub
      

  3.   

    刚才没仔细看,这个比较恰当,注意start, end两个参数Private Sub Command1_Click()
        Picture1.FillColor = RGB(255, 0, 0)
        Picture1.FillStyle = 0
        Picture1.Circle (3000, 3000), 2000, RGB(255, 0, 0), -1, -3, 1
    End Sub
      

  4.   

    谢谢flyingscv 解贴之前问一个问题
    为什么取负值就可以呢?
    piccircle.fillcolor=vbgreen
    piccircle.fillstyle=0
    PicCircle.Circle (PicCircle.ScaleWidth / 2, PicCircle.ScaleHeight / 2), PicCircle.ScaleHeight / 3, vbGreen, -0.000001, 6.28 * MD / All'取近似值
    piccircle.fillcolor=vbred
    PicCircle.Circle (PicCircle.ScaleWidth / 2, PicCircle.ScaleHeight / 2), PicCircle.ScaleHeight / 3, vbRed, -6.28 * MD / All,-6.28'取近似值
    piccircle.fillcolor=vbred
      

  5.   

    就是这个用法,呵呵,只是MSDN上没写出来