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
前辈能在多提点一些吗?新手真心求帮助
追答呵呵。给你一个代码吧。希望你能好好研究,举一反三。
Private Sub Command1_Click()
Dim i As Single, x As Integer, y As Integer, r As Integer
x = Form1.Width / 2
y = Form1.Height / 2
r = Form1.Width / 3
Circle (x, y), r, vbRed
For i = 0 To 6.3 Step 0.00001
Line (x, y)-(x + r * Cos(i), y + r * Sin(i)), vbRed
Next i
End Sub
运行后,你将看到一个动态的结果。
分给你了吧,问题是如果这个图形并不是一个规则图形,这个办法就不行了
追答呵呵。你真聪明。做到了举一反三了。一切事物的存在都是有条件的。这个回答的正确与否,其判断准则应该是你的问题所设的条件。不是吗?
本回答被提问者采纳