VB程序设计图形程序设计.pptx





《VB程序设计图形程序设计.pptx》由会员分享,可在线阅读,更多相关《VB程序设计图形程序设计.pptx(68页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 8.1知识要点知识要点1、图形设计基础、图形设计基础(1)坐标系统)坐标系统Visual Basic用坐标来描述一个像素位于用坐标来描述一个像素位于存放他的容器内的位置。而每个容器都有自存放他的容器内的位置。而每个容器都有自己的一个坐标系,构成一个坐标系要包含三己的一个坐标系,构成一个坐标系要包含三个基本要素,那就是:坐标原点、坐标度量个基本要素,那就是:坐标原点、坐标度量单位和坐标轴的长度和方向。单位和坐标轴的长度和方向。缺省情况下,坐标系的坐标原点在对象的左缺省情况下,坐标系的坐标原点在对象的左上角,横向向右为上角,横向向右为X轴的正方向,纵向向下轴的正方向,纵向向下为为Y轴的正方向。轴
2、的正方向。第1页/共68页用户可以通过两种方法来自行定义坐标系。用户可以通过两种方法来自行定义坐标系。通过修改通过修改ScaleTop、ScaleLeft、ScaleWidth和和ScaleHeight的属性值的属性值建立坐标系。建立坐标系。使用使用Scale方法来设置坐标系。方法来设置坐标系。Scale方法用于定义方法用于定义Form、PictureBox或或Printer的坐标系统,其语法格式的坐标系统,其语法格式为:为:对象对象.Scale(x1,y1)-(x2,y2)其中:其中:对象为可选项,它可以是对象为可选项,它可以是Form、PictureBox或或Printer对象。对象。(x
3、1,y1)为所定义坐标系的左上角的坐标。为所定义坐标系的左上角的坐标。(x2,y2)为所定义坐标系的右下角坐标。为所定义坐标系的右下角坐标。第2页/共68页(2)图形层)图形层Visual Basic在构造图形时,在三个不同的屏幕层次上放置可在构造图形时,在三个不同的屏幕层次上放置可视的组成部分。工具箱中除了标签、直线、形状外的控件放在视的组成部分。工具箱中除了标签、直线、形状外的控件放在最上层,标签、直线和形状控件放在中间层,最下层放置的是最上层,标签、直线和形状控件放在中间层,最下层放置的是由图形方法所绘制的图形。由图形方法所绘制的图形。同一图形层上控件对象的排列顺序称为同一图形层上控件对
4、象的排列顺序称为Z-顺序。顺序。调整调整Z-顺序的方法有两中:顺序的方法有两中:第3页/共68页在窗体设计阶段时,选中要调整的控件,单击在窗体设计阶段时,选中要调整的控件,单击“格式格式”菜单,选择菜单,选择“顺序顺序”菜单项,再选择菜单项,再选择“置前置前”或或“置后置后”命令即可。命令即可。代码中使用代码中使用Zorder方法。方法。Zorder方法的语法格式为:方法的语法格式为:Object.Zorder position其中:其中:Object为要调整的窗体或其他控件对象。为要调整的窗体或其他控件对象。Position为一整数,用于指出一个控件相对于另一个控件的位置。如果为一整数,用于
5、指出一个控件相对于另一个控件的位置。如果Position为为0或被省略,则或被省略,则Object位于位于 Z-顺序的前面;如果顺序的前面;如果Position为为1,则,则Object位于位于 Z-顺序的后面。顺序的后面。第4页/共68页(3)颜色设置函数)颜色设置函数Visual Basic提供了两个选择颜色的函数提供了两个选择颜色的函数RGB()和()和QBColor()。()。RGB()函数()函数RGB()函数通过红、绿、蓝三种基本色的混合来生成某种颜色,其语法格式为:()函数通过红、绿、蓝三种基本色的混合来生成某种颜色,其语法格式为:RGB(red,green,blue)其中,其中
6、,red、green和和blue三个参数都是必要参数,分别表示红、绿和蓝色的颜色成分,它们的取值范围三个参数都是必要参数,分别表示红、绿和蓝色的颜色成分,它们的取值范围都是都是0255间的整数。间的整数。第5页/共68页QBColor()函数()函数QBColor()函数能提供()函数能提供16中颜色,其语法格式为:中颜色,其语法格式为:QBColor(color)其中,其中,color为必要参数,是一个界于为必要参数,是一个界于015间的整数,每个整间的整数,每个整数代表一种颜色。数代表一种颜色。第6页/共68页2、图形控件、图形控件 VB提供了直线控件(提供了直线控件(Line)和形状控件
7、()和形状控件(Shape)两种常用的图形控件。)两种常用的图形控件。用户可以使用图形控件方便地完成规则几何图形的绘制。用户可以使用图形控件方便地完成规则几何图形的绘制。(1)直线控件)直线控件直线控件(直线控件(Line)可以用来在窗体或图片框上画直线。分别用)可以用来在窗体或图片框上画直线。分别用x1,y1和和x2,y2来返回或控制线条起始点和终止点在来返回或控制线条起始点和终止点在X轴和轴和Y轴方向上的位置。轴方向上的位置。(2)形状控件)形状控件形状控件(形状控件(Shape)可以用来画矩形、正方形、椭圆、圆、圆角矩形及圆角正)可以用来画矩形、正方形、椭圆、圆、圆角矩形及圆角正方形,方
8、形,6种图形分别对应其种图形分别对应其Shape属性的属性的05的的6个属性值。个属性值。第7页/共68页3、图形方法、图形方法 VB提供了绘制点、线、圆等方法,利用它提供了绘制点、线、圆等方法,利用它们可以使绘制图形更加灵活。们可以使绘制图形更加灵活。(1)Line方法方法 Line方法的基本功能是在窗体或图片框上方法的基本功能是在窗体或图片框上画直线和矩形。此外,利用画直线和矩形。此外,利用Line方法还可以绘方法还可以绘制出各种曲线,因为任何曲线都可以近似地看制出各种曲线,因为任何曲线都可以近似地看成是由无数条小线段组成的。成是由无数条小线段组成的。第8页/共68页Line方法的语法格式
9、为:方法的语法格式为:对象对象.Line Step(x1,y1)-Step(x2,y2),颜色颜色,B F其中:其中:对象可以是窗体或图片框,缺省为窗体。对象可以是窗体或图片框,缺省为窗体。(x1,y1)和和(x2,y2)分别表示线段的起始坐标和终止坐标。分别表示线段的起始坐标和终止坐标。第9页/共68页(2)Circle方法方法Circle方法的基本功能是在窗体或图片框上绘制圆、椭圆、弧或扇形。它的语方法的基本功能是在窗体或图片框上绘制圆、椭圆、弧或扇形。它的语法格式如下:法格式如下:对象对象.Circle Step(x,y),radius,color,start,end,aspect 其中
10、:其中:对象是调用对象是调用Circle方法的对象名称。方法的对象名称。(x,y)用来指定圆心坐标。用来指定圆心坐标。Radius表示半径的长度。表示半径的长度。Color为所画图形的颜色。为所画图形的颜色。start 和和end分别表示圆弧或椭圆弧的开始和终止角度。分别表示圆弧或椭圆弧的开始和终止角度。aspect是所画圆的纵横尺寸比。是所画圆的纵横尺寸比。第10页/共68页(3)Pset与与Point方法方法 Pset方法方法Pset方法的基本功能是在窗体或图片框上绘制点。它的语法格式如下:方法的基本功能是在窗体或图片框上绘制点。它的语法格式如下:对象对象.Pset Step(x,y),c
11、olor其中:其中:对象是调用对象是调用Pset方法的对象名称。方法的对象名称。(x,y)用来指定点的水平和垂直坐标。用来指定点的水平和垂直坐标。Color用来指定点的颜色。用来指定点的颜色。第11页/共68页 Point方法方法Point方法用来返回窗体或图片框上指定位置的颜色值,用长整型数据来表示。它的语法格式如下:方法用来返回窗体或图片框上指定位置的颜色值,用长整型数据来表示。它的语法格式如下:对象对象.Point(x,y)其中:对象和其中:对象和(x,y)的用法和的用法和Pset方法相同。方法相同。第12页/共68页 PaintPicture方法方法PaintPicture方法可以访问
12、内置操作系统中的位块传送机制快速地操作像素,方法可以访问内置操作系统中的位块传送机制快速地操作像素,具体来说具体来说PaintPicture方法可以在窗体、图片框或打印机上绘制文件的内容方法可以在窗体、图片框或打印机上绘制文件的内容(图形文件的格式可以是(图形文件的格式可以是“.bmp”、“.wmf”、“.emf”、“.cur”、“.ico”或或“.dib”)。)。PaintPicture方法的语法格式如下:方法的语法格式如下:对象对象.PaintPicture picture,x1,y1,width1,height1,x2,y2,width2,height2,opcode第13页/共68页其
13、中:其中:对象为调用该方法的对象名称,通常是目对象为调用该方法的对象名称,通常是目标图形对象。标图形对象。picture为绘制到对象上的图形源,可以为绘制到对象上的图形源,可以是图形框、图像框或窗体的是图形框、图像框或窗体的picture属性。属性。x1,y1指定在对象上绘制指定在对象上绘制picture的目标的目标坐标,即目标矩形区域的左上角坐标,它坐标,即目标矩形区域的左上角坐标,它可以是目标控件的任意位置。可以是目标控件的任意位置。第14页/共68页width1,height1分别指定分别指定picture的目标宽度和目标高度。的目标宽度和目标高度。x2,y2指定指定picture内剪贴
14、区的位置,内剪贴区的位置,即传送图形矩形的左上角坐标。即传送图形矩形的左上角坐标。width2,height2指定指定picture内剪内剪贴区的宽度和高度,从而确定传送图贴区的宽度和高度,从而确定传送图形的大小。形的大小。第15页/共68页 第第8章章 图形程序设计图形程序设计 8.1 知识要点知识要点 8.2 习题与解答习题与解答 8.3 实训指导实训指导 8.4 测验题测验题第16页/共68页 8.2习题与解答习题与解答1、描述、描述VB缺省的坐标系,用户自定义坐标系的方法有哪些?缺省的坐标系,用户自定义坐标系的方法有哪些?答案:缺省情况下,坐标系的坐标原点在对象的左上角,横向向右为答案
15、:缺省情况下,坐标系的坐标原点在对象的左上角,横向向右为X轴的正方向,纵向向下为轴的正方向,纵向向下为Y轴的正方轴的正方向。向。用户可以通过两种方法来自行定义坐标系。一种是通过修改用户可以通过两种方法来自行定义坐标系。一种是通过修改ScaleTop、ScaleLeft、ScaleWidth和和ScaleHeight的属性值建立坐标系;另一种是使用的属性值建立坐标系;另一种是使用Scale方法来设置坐标系。方法来设置坐标系。第17页/共68页2、VB提供了几个图形控件?它们的功能分别是什么?提供了几个图形控件?它们的功能分别是什么?答案:答案:VB提供了直线控件(提供了直线控件(Line)和形状
16、控件()和形状控件(Shape)两种常用的图形控件。分别用来在窗体或图片)两种常用的图形控件。分别用来在窗体或图片框上画直线和矩形、正方形、椭圆、圆、圆角矩形及圆角正方形框上画直线和矩形、正方形、椭圆、圆、圆角矩形及圆角正方形第18页/共68页3、熟悉利用、熟悉利用Line画图的方法,说出下面几个语句的含义。画图的方法,说出下面几个语句的含义。(1)Form1.Line(1000,1000)-(3000,3000)(2)Form1.Line-(3000,3000),RGB(255,0,0)(3)Form1.Line Step(1000,1000)-(3000,3000)(4)Form1.Lin
17、e(1000,1000)-(3000,3000),RGB(255,0,0),B(5)Form1.Line(1000,1000)-(3000,3000),RGB(255,0,0),BF答案:略(读者可以自行上机验证)。答案:略(读者可以自行上机验证)。第19页/共68页4、熟悉利用、熟悉利用Circle画图的方法,说出下面几个语句的含义(画图的方法,说出下面几个语句的含义(pi=3.1415926)。)。(1)Form1.Circle Step(2000,2000),1000,QBColor(1)(2)Form1.Circle(2000,2000),1000,3*pi/2,pi/3(3)Form
18、1.Circle(2000,2000),1000,3*pi/2,0.5(4)Form1.Circle(2000,2000),1000,QBColor(2),-3*pi/2,-pi答案:略(读者可以自行上机验证)。答案:略(读者可以自行上机验证)。第20页/共68页5、说出、说出Pset方法和方法和Point方法的基本功能和使用方法。方法的基本功能和使用方法。答案:答案:Pset方法的基本功能是在窗体或图片框上绘制点;方法的基本功能是在窗体或图片框上绘制点;Point方法用来返回窗体或图片框上指定位置方法用来返回窗体或图片框上指定位置的颜色值,用长整型数据来表示。(使用方法略)的颜色值,用长整型
19、数据来表示。(使用方法略)6、怎样通过、怎样通过PaintPicture方法实现像素操作。方法实现像素操作。答案:答案:PaintPicture方法可以访问内置操作系统中的位块传送机制快速地操作像素。方法可以访问内置操作系统中的位块传送机制快速地操作像素。PaintPicture方方法常常用来从一个窗体或图片框控件中向另一个对象复制一个矩形区域的像素。法常常用来从一个窗体或图片框控件中向另一个对象复制一个矩形区域的像素。continue第21页/共68页 在复制时,如果设置要传送的图形宽度位负数,则复制后的在复制时,如果设置要传送的图形宽度位负数,则复制后的图像水平翻转;如果设置要传送的图形高
20、度位负数,则复制后图像水平翻转;如果设置要传送的图形高度位负数,则复制后的图像上下翻转;设置要传送的图形宽度和高度均为位负数,的图像上下翻转;设置要传送的图形宽度和高度均为位负数,则复制后的图像在两个方向上翻转。目标图形的大小,可以通则复制后的图像在两个方向上翻转。目标图形的大小,可以通过目标图形与源图像大小的比例而得,即如果目标图形比源图过目标图形与源图像大小的比例而得,即如果目标图形比源图形大,就可得到放大的图形。形大,就可得到放大的图形。第22页/共68页 第第8章章 图形程序设计图形程序设计 8.1 知识要点知识要点 8.2 习题与解答习题与解答 8.3 实训指导实训指导 8.4 测验
21、题测验题第23页/共68页 8.3实训指导实训指导8.3.1技能训练目的技能训练目的 掌握建立用户自定义坐标系的方法。掌握建立用户自定义坐标系的方法。掌握直线和形状控件的使用方法。掌握直线和形状控件的使用方法。掌握利用掌握利用Line方法在窗体或图片框上画直线和矩形的技巧。方法在窗体或图片框上画直线和矩形的技巧。掌握利用掌握利用Circle方法在窗体或图片框上绘制圆、椭圆或弧等图形的技巧。方法在窗体或图片框上绘制圆、椭圆或弧等图形的技巧。掌握利用掌握利用Pset与与Point方法对点操作的方法。方法对点操作的方法。掌握利用掌握利用PaintPicture方法实现像素操作的方法。方法实现像素操作
22、的方法。第24页/共68页8.3.2技能训练内容技能训练内容【实训实训8.1】利用直线和形状控件模拟两个小球相撞过程。程序运行白球和黑利用直线和形状控件模拟两个小球相撞过程。程序运行白球和黑球分别向右和左运动,当两球相撞后,分别向相反方向运动,如图球分别向右和左运动,当两球相撞后,分别向相反方向运动,如图8-1所示。所示。提示:在窗体上添加直线控件(提示:在窗体上添加直线控件(Line1)、图形控件()、图形控件(Shape1)、图形控件)、图形控件(Shape2)、时钟控件()、时钟控件(timer1)和时钟控件()和时钟控件(timer2)。)。Line1的的BorderWidth属性设置
23、为属性设置为2,Shape1的的FillColor和和BorderColor属性设属性设置为黑色,置为黑色,Shape1的的FillColor和和BorderColor属性设置为白色,属性设置为白色,timer1和和timer2的的Interval属性设置为属性设置为100。第25页/共68页图图8-1第26页/共68页参考代码:参考代码:两个小球相向而行两个小球相向而行Private Sub Timer1_Timer()If Shape1.Left Shape2.Left+Shape2.Width+400 Then Shape1.Left=Shape1.Left-200 Shape2.Lef
24、t=Shape2.Left+200Else Timer2.Enabled=True Timer1.Enabled=FalseEnd IfEnd Sub两个小球背向而行两个小球背向而行Private Sub Timer2_Timer()Shape1.Left=Shape1.Left+200 Shape2.Left=Shape2.Left-200End Sub第27页/共68页【实训实训8.2】在窗体上画出从同一起点出发的在窗体上画出从同一起点出发的100条长度不等的条长度不等的射线,如图射线,如图8-2所示。所示。图图8-2第28页/共68页参考代码:参考代码:Private Sub Form_
25、Click()Dim i As IntegerForm1.ClsFor i=1 To 100RandomizeCurrentX=Rnd()*Form1.ScaleWidthCurrentY=Rnd()*Form1.ScaleHeightForm1.Line-(0,0)Next iEnd Sub第29页/共68页【实训实训8.3】在窗体上画出螺旋线,如图在窗体上画出螺旋线,如图8-3所所示。示。图图8-3第30页/共68页参考代码:参考代码:Private Sub Form_Paint()Dim pi as singlepi=4*Atn(1)Form1.Scale(-60,60)-(60,-60
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 程序设计 图形

限制150内