vb 画圆问题

我要画一个红色实心的园,它的边框的颜色和宽度怎么设置?如果我不要边框呢?请给示例代码

创建一个工程,窗口上面放一个PictureBox,大小相对大一些,将其ScaleMode属性设为3。
然后放一个按钮,其中加入以下代码:

'这段代码演示了如何使用VB的Circle方法绘制各种各样的圆。

Form1.Picture1.Circle (60, 60), 40, vbRed '画一个圆心(60,60)半径40的红色的圆(默认空心)

Form1.Picture1.FillStyle = 0 '设定填充模式为实心
Form1.Picture1.FillColor = vbBlue '设定填充色蓝色
Form1.Picture1.Circle (190, 60), 40, vbRed '下来画出来的就是填充了实心蓝色的圆了

Form1.Picture1.DrawWidth = 3 '设定边框宽度为3
Form1.Picture1.Circle (60, 190), 40, vbRed '这次绘制出来的圆边框粗细为3

Form1.Picture1.DrawStyle = 5 '设定边框不可见
Form1.Picture1.FillColor = vbRed '设定填充色红色
Form1.Picture1.Circle (190, 190), 40 '这次绘制出来一个无边框、填充颜色是红色的圆

Form1.Picture1.Refresh

然后试试看,对照注释应该就明白了。
————————————————
PS:对楼上 wys_sans给出的方法的评价:
其方法1、根本不能称作画圆;
其方法2、很显然Circle可以直接画实心的圆,只是这位不知道而已;
其方法3、效率极低效果极差的最糟糕方法。

参考资料:自己写的

温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-07-06
有多种方法可实现:一是用Shape控件画圆;二是用Circle函数画圆;三是用PSet函数画圆。
1、用Shape控件画圆;将Shape的Shape属性设为3-Circle值就是圆,实心就是设置BorderStyle属性为1-Opaque值,边框颜色就是设置BorderColor属性为vbRed就是红色,宽度就是设置Width属性,不要边框你可以将边框颜色设为红色,这样看上去就没有边框。
2、用Circle函数画圆;
Const PI=3.14159265
Circle (1000, 1000), 200, vbRed
给定圆心坐标,半径,画笔颜色后即可画圆或圆弧,但不能画出实心圆,不过可以通过循环,将圆半径递减,来实现画出实心圆,不过比较耗时。
3、用PSet函数画圆;
Const PI = 3.14169265
Dim X, Y As Single
Dim R As Single
R = 1000
For I=0 to 359
X = R * Cos(I / PI)
Y = R * Sin(I / PI)
PSet (X, Y),vbRed
I = I + 1
Next I
这个方法画圆类似Circle函数画圆。
第2个回答  2019-06-08
Private
Sub
Command1_Click()
For
y
=
0
To
Form1.ScaleHeight
-
1
Step
30

For
x
=
0
To
Form1.ScaleWidth
-
1
Step
5

red1
=
Int(Rnd
*
255)

blue1
=
Int(Rnd
*
255)

green1
=
Int(Rnd
*
255)

Form1.Circle
(x,
y),
5,
RGB(red1,
blue1,
green1)

Next
x
Next
y
For
x
=
0
To
Form1.ScaleWidth
-
1
Step
30

For
y
=
0
To
Form1.ScaleHeight
-
1
Step
5

red1
=
Int(Rnd
*
255)

blue1
=
Int(Rnd
*
255)

green1
=
Int(Rnd
*
255)

Form1.Circle
(x,
y),
5,
RGB(red1,
blue1,
green1)

Next
y
Next
x
End
Sub
第3个回答  2009-07-07
1、用Shape控件画圆;将Shape的Shape属性设为3-Circle值就是圆,实心就是设置BorderStyle属性为1-Opaque值,边框颜色就是设置BorderColor属性为vbRed就是红色,宽度就是设置Width属性,不要边框你可以将边框颜色设为红色,这样看上去就没有边框。
2、用Circle函数画圆;
Const PI=3.14159265
Circle (1000, 1000), 200, vbRed
给定圆心坐标,半径,画笔颜色后即可画圆或圆弧,但不能画出实心圆,不过可以通过循环,将圆半径递减,来实现画出实心圆,不过比较耗时。
3、用PSet函数画圆;
Const PI = 3.14169265
Dim X, Y As Single
Dim R As Single
R = 1000
For I=0 to 359
X = R * Cos(I / PI)
Y = R * Sin(I / PI)
PSet (X, Y),vbRed
I = I + 1
Next I
这个方法画圆类似Circle函数画圆
相似回答