VB中直接有“填充方式”, FillStyle 属性就决定了用什么样的填充方式填充圆内空间。
其中:
VbFSSolid 0 实心
VbFSTransparent 1 (缺省值)透明。
VbHorizontalLine 2 水平直线。
VbVerticalLine 3 垂直直线。
VbUpwardDiagonal 4 上斜对角线。
VbDownwardDiagonal 5 下斜对角线
VbCross 6 十字线
VbDiagonalCross 7 交叉对角线
示例代码如下:
Private Sub Command1_Click()
Dim CX, CY, Radius, Limit ' Declare variable.
FillColor = vbRed '填充颜色
FillStyle = 0 '实心
FillStyle = 1 '无填充
FillStyle = 2 '水平直线
FillStyle = 3 '垂直直线
FillStyle = 4 '上斜对角线
FillStyle = 5 '下斜对角线
FillStyle = 6 '十字线
FillStyle = 7 '交叉对角线
ScaleMode = 3 ' 以像素为单位。
CX = ScaleWidth / 2 ' X 位置。
CY = ScaleHeight / 2 ' Y 位置。
If CX > CY Then Limit = CY Else Limit = CX
Radius = Limit ' 半径。
Circle (CX, CY), Radius, RGB(Rnd * 255, Rnd * 255, Rnd * 255)
End Sub
没时间细说。呵呵。给你个思路:以圆心(x,y)为起点,以r(x+cosi,y+sini)为终点画线。这要用for 循环来做。步长i越小,效果越好。
line这是用来画直线的?
画圆用Circle
请参考
Private Sub Command1_Click()
FillColor = vbRed '填充颜色
FillStyle = 0 '实心
Circle (200, 200), 150, vbRed '画圆
End Sub
'Circle (x, y), r, c
'其中(x, y)是原点坐标,r是半径,c是颜色