首页 理论教育 VB图形方法-VisualBasic案例化程序设计

VB图形方法-VisualBasic案例化程序设计

时间:2023-10-20 理论教育 版权反馈
【摘要】:在VB中,除了使用图形控件之外,还提供了创建图形的一些方法,如Line方法实现画直线和矩形,Circle方法实现画圆、画圆弧、画椭圆等。表8-5Pset方法中参数含义需要说明的是Pset方法所画点的大小取决于容器的DrawWidth属性值。表8-6Point方法参数含义4.Circle——画圆、弧和椭圆的方法在VB中,使用Circle方法可以画圆、弧和椭圆。图8-4绘制正弦曲线界面利用PSet方法复制图像。

VB图形方法-VisualBasic案例化程序设计

在VB中,除了使用图形控件(如Line、Shape)之外,还提供了创建图形的一些方法,如Line方法实现画直线和矩形,Circle方法实现画圆、画圆弧、画椭圆等。

1.Line——画线和画矩形的方法

(1)Line方法画线

画线有两种方式:两点边线和多点折线方式。

格式:[Object.]Line[[step](X1,Y1)]-[step](X2,Y2)[,Color]。

说明:在对象上画直线,各参数的含义如表8-4所示。

表8-4 Line方法中各参数的含义

①绘制两点之间连线

格式1:[容器对象名.]Line[(X1,Y1)]-(X2,Y2)[,Color]。

说明:如果容器对象名省略则指当前窗体;默认的起点坐标则以当前输出位置为起点;省略Color项则为容器对象的ForeColor属性;坐标点为Single类型表达式。

例如,下面的语句分别在窗体Form1、控件Picture1上画直线。

Form1.Line(10,200)-(1000,300),vbGreen '窗体坐标

Picture1.Line(20,100)-(800,200),RGB(0,0,255) '图片框坐标

格式2:[容器对象名.]Line[(X1,Y1)]-Step(X2,Y2)[,Color]。

说明:所绘制直线的两个端点位置为(X1,Y1)和(X1+X2,Y1+Y2)。

例如,下列语句在窗体Form1画线。

Form1.Line(10,200)-Step(1000,300),vbRed '窗体坐标

上面所绘制直线的两个端点位置为(10,200)和(1100,500)。

②绘制多点折线

连续使用缺省起点、画两点连线,可以绘制多点折线,每句的终点位置为下一句的起点位置,首句或是采用格式1或是以当前输出位置作为起点。

例如,下面的语句在窗体Form1分别画三条折线,构成一个三角形。

Line(200,150)-(800,300) '画一条从(200,150)到(800,300)的直线段,颜色为前景色

Line-(800,700) '画一条从(CurrentX、CurrentY)到(800,700)的直线段,颜色为前景色

Line-(200,150) '从当前位置开始,到(200,150)的直线段,颜色为前景色

(2)Line方法画矩形

格式:[容器对象名.]Line[(X1,Y1)]-[Step](X2,Y2)[,Color],B[F]。

说明:指定位置为矩形对角点,B表示绘制矩形,F表示填充,可选,以容器的FillStyle填充格式、FillColor颜色在矩形内部填充;图形边框的颜色由Color表达式指定,省略Color则为容器的ForeColor属性。例如:

Line(200,100)-(400,300),,B   '画空心矩形,逗号不可省略,颜色为前景色

Line(500,300)-(800,600),vbBlue,BF '用蓝色画实心矩形,填充色也为蓝色

2.Pset——画点方法

格式:[object.]Pset [Step](X,Y)[,color]。

说明:该方法是在容器上(X,Y)处画点,颜色为color。其中,X、Y是Single类型表达式,缺省容器对象为当前窗体,缺省color则为容器对象前景色(ForeColor)。各参数的含义如表8-5所示。

表8-5 Pset方法中参数含义

需要说明的是Pset方法所画点的大小取决于容器的DrawWidth属性值。

例如:语句Form1.Pset(1000,300),vbRed表示在坐标(1000,300)处画一个红色的点,点的大小由容器对象Form1的DrawWidth值决定。

3.Point——获取某点颜色值方法

格式:[Object.]Point(X,Y)。

说明:返回容器对象中指定点的RGB颜色,其颜色值为长整型。各参数的含义如表8-6所示。如果由X和Y坐标所引用的点位于Object之外,Point方法的返回值为-1。

表8-6 Point方法参数含义

4.Circle——画圆、弧和椭圆的方法

在VB中,使用Circle方法可以画圆、弧和椭圆。

(1)使用Circle方法画圆

格式:[Object.]Circle[Step](X,Y),radius[,Color]。

说明:以(X,Y)为圆心、以radius为半径的圆,圆的颜色为Color值。若Object省略则为当前为容器对象名,有Step时则以(CurrentX+X,CurrentY+Y)为圆心,Color选项用法同前。

例如,下面语句在当前窗体中绘制一个圆,颜色为蓝色。

Circle(500,600),300,vbBlue

(2)使用Circle方法画弧

格式:[Object.]Circle[Step](X,Y),radius,[Color],Start,End。

说明:以Start弧度为起点,按逆时针方向到End弧度为止画一段圆弧(平行于X轴的正向为0弧度)。如果Object省略则为当前为容器对象名,Start、End为Single类型表达式,其他选项的用法同前。如果Start为负值,该方法还画出一条从圆心到圆弧相应端点的连线,参数End也同样。

例如:下列语句在当前窗体中绘制一段弧(或扇形)。

(www.xing528.com)

(3)Circle方法画椭圆

格式:[Object.]Circle[Step](X,Y),Radius,[Color],[Start,End],Aspect。

说明:其中Aspect是椭圆纵轴与横轴之比,为Single类型表达式取正值。如果Aspect的值小于1,则Radius为横轴的长度,否则为纵轴的长度,可省略某个参数,但不能省略“,”号。

例如:下列语句在当前窗体中绘制2个不同纵横比的椭圆。

【案例8-2】正弦曲线绘制示例。

【案例要求】

在窗体上绘制一条正弦曲线,自定义坐标系,界面设计如图8-4中的设计效果。

【案例操作】

(1)在窗体单击事件中输入如下代码。

(2)按F5键或点击工具栏中的“运行”按钮运行程序,单击窗体后运行结果如图8-4中运行效果所示。

图8-4 绘制正弦曲线界面

【案例8-3】利用PSet方法复制图像。

【案例要求】

将窗体上图片框Picture1中的图像复制到图片框Picture2中,图片的色彩、纵横比保持不变。

【案例操作】

(1)界面设计

在窗体上分别放置两个图片框Picture1、Picture2,命令按钮Command1、Command2,如图8-5中设计效果所示。

图8-5 图像复制界面

(2)代码设计

(3)运行程序

按F5键或点击工具栏中的“运行”按钮运行程序,单击“复制”按钮运行结果如图8-5中运行效果所示。

【案例8-4】使用Circle方法画同心圆示例。

【案例要求】

在窗体的图片框Picture1中动态画出以图片框中心为圆心,以随机数产生的半径作为圆的半径和以随机数产生的颜色的同心圆。

【案例操作】

(1)界面设计

在窗体上添加一个图片框Picture1,2个命令按钮Command1、Command2,一个定时控件Timer1,如图8-6中设计效果所示。

图8-6 绘制同心圆界面

(2)代码设计

(3)运行程序

按F5键或点击工具栏中的“运行”按钮运行程序,运行结果如图8-6中运行效果所示。

【案例8-5】画图方法、属性综合应用示例。

【案例要求】

在窗体上,利用画图的方法和相关属性画矩形、艺术圆和饼图。

【案例操作】

(1)界面设计

在窗体上分别添加3个命令按钮(Command1、Command2、Command3)并修改其Caption属性,设计界面如图8-7中的设计效果所示。

图8-7 利用画图方法画矩形、艺术圆、饼图

(2)代码设计

(3)运行程序

按F5键或点击工具栏中的“运行”按钮运行程序,分别点击画矩形、艺术圆和饼图按钮,运行结果如图8-7中运行效果所示。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈