第11章图形与图像设计电子课件 中职 高教版 Visual Basic程序设计(第4版).pptx
第11章 图形与图像设计电子课件 中职 高教版 Visual Basic程序设计(第4版)单元十一单元十一单元十一单元十一图形与图像设计图形与图像设计图形与图像设计图形与图像设计单元十一单元十一 图形与图像设计图形与图像设计绘绘绘绘 制制制制 图图图图 形形形形 1 1 1 1显显显显 示示示示 图图图图 片片片片 2 2 2 211.1 绘制图形 在在VB中,中,绘制制图形的方法有两种:形的方法有两种:使用使用图形控件形控件,如,如Line控件、控件、Shape控件;控件;使用使用绘图方法方法,如,如Line方法、方法、Circle方法等。方法等。使用使用绘图控件无需控件无需编写代写代码,但它提供的,但它提供的绘图样式式选择有限,只能有限,只能实现简单功能,要功能,要实现更高更高级功能,功能,还需采用需采用绘图方法。方法。11.1.1 图形控件1.Shape控件在窗体上使用Shape控件绘制图形,并设置不同的填充样式。(1)在窗体上建立Shape控件数组Shape1(0)Shape1(5)。(2)编写事件代码。Private Sub Form_Activate()Dim i As Integer Print Print 0 1 2 3 4 5 Shape1(0).Shape=0 Shape1(0).FillStyle=2 For i=1 To 5 Shape1(i).Left=Shape1(i 1).Left+1000 Shape1(i).Shape=i Shape1(i).FillStyle=i+2 Shape1(i).Visible=True Next iEnd Sub 【相关知相关知识】(1)Shape控件控件预定定义了了6种形状,通种形状,通过设置置Shape属性属性来来实现所需的形状。所需的形状。(2)用用Shape控件画出的控件画出的图形,形,还可以可以调整其大小,整其大小,设置其置其颜色、色、边框框样式、式、边框框宽度等。度等。Shape控件的常用属性控件的常用属性属 性说 明属 性说 明BorderColor边框色BorderWidth边框宽度FillColor填充色FillStyle填充样式BorderStyle边框样式DrawMode画图模式2.Line控件 用用Line控件画出控件画出图示的示的图形。形。在窗体上,添加一个在窗体上,添加一个图片框控件,再在片框控件,再在图片片框控件上添加若干框控件上添加若干Line控件,其中每一根直控件,其中每一根直线(即一个(即一个Line控件)是一个控件)是一个对象,象,组成成图案。案。11.1.2 常用的绘图方法1.画点方法(PSet)利用利用Pset方法在窗体上画出方法在窗体上画出“满天星天星”。将窗体的背景色改将窗体的背景色改为白色,直接在窗体上白色,直接在窗体上产生生“满天星天星”,以便清晰,以便清晰显示。示。Private Sub Form_load()Show DrawWidth=3 Randomize For i=1 To 1000 x=Form1.ScaleWidth*Rnd y=Form1.ScaleHeight*Rnd r=Int(255*Rnd)g=Int(255*Rnd)b=Int(255*Rnd)Form1.PSet(x,y),RGB(r,g,b)For n=1 To 50000:Next n Next iEnd Sub(1)PSet方法可以在方法可以在对象的指定位置(象的指定位置(x,y),),按确定的像素按确定的像素颜色画点,色画点,语法法为:object.PSet Step(x,y),颜色色(2)VB提供了两个提供了两个专门处理理颜色的函数色的函数:RGB函数函数。采用。采用红、绿、蓝三基色原理,返三基色原理,返回一个回一个Long整数,用来表示一个整数,用来表示一个RGB颜色色值。RGB(red,green,blue)QBColor函数。返回一个用来表示所函数。返回一个用来表示所对应颜色色值的的RGB颜色色码。语法法为:QBColor(color)2.画直线、矩形方法(Line)用用Line方法画出方法画出图形。形。Private Sub Form_Paint()Cls Scale(0,0)(15,15)Line(1,1)(5,5),4 Line(6,1)(8,5),4,B Line(10,1)(13,5),4,BF For i=1 To 3 Line(3+i,6+i)(11 i,14 i),B Next iEnd Sub Line方法在方法在对象上的两点之象上的两点之间画直画直线或矩形,或矩形,语法法为:object.Line Step x1,y1 Step(x2,y2),颜色色,B F 说明:明:x1,y1为可可选项,是直,是直线或矩形的起点坐或矩形的起点坐标。如。如省略,起点位于省略,起点位于CurrentX和和CurrentY指定的位置。指定的位置。x2,y2为必需的,是直必需的,是直线或矩形的或矩形的终点坐点坐标。颜色色为可可选的的长整型数,整型数,设置直置直线或矩形的或矩形的颜色。如果省略,色。如果省略,则使用使用ForeColor属性属性值。B为可可选项,如果,如果选择B,则以以(x1,y1)为左上角左上角坐坐标,(x2,y2)为右下角坐右下角坐标画出矩形。画出矩形。F选项规定矩形定矩形以矩形以矩形边框的框的颜色填充。不能不用色填充。不能不用B而用而用F。如果不用。如果不用F仅用用B,则矩形用当前的矩形用当前的FillColor和和FillStyle填充。填充。FillStyle的缺省的缺省值为transparent。3.画圆方法(Circle)在在图片框中画出片框中画出圆弧、扇形。弧、扇形。(1)在窗体上添加一个在窗体上添加一个图片框片框Picture1和一个和一个Command1控件。控件。(2)编写写“输出出图形形”命令按命令按钮的的单击事件代事件代码如下:如下:Private Sub Command1_Click()pi=4*Atn(1)Picture1.Scale(0,0)(100,100)Picture1.Circle(50,50),10,QBColor(1),0,pi/2 Picture1.Circle(50,50),20,QBColor(2),pi/3,1.5*pi Picture1.Circle(50,50),30,QBColor(3),pi/2,pi/6 Picture1.Circle(50,50),40,QBColor(4),pi/4,pi/3End Sub Circle方法可以在方法可以在对象上画象上画圆、椭圆或弧。或弧。语法法为:object.Circle Step(x,y),半径半径,color,start,end,aspect 说明:明:(x,y)指定指定圆、椭圆或弧的中心坐或弧的中心坐标。半径半径指定指定圆、椭圆或弧的半径。或弧的半径。color可可选,如果省略,如果省略,则使用使用ForeColor属性属性值。start和和end指定(以弧度指定(以弧度为单位)弧或扇形的起点位)弧或扇形的起点和和终点位置。其范点位置。其范围从从2到到2。起点的缺省。起点的缺省值是是0,终点的缺省点的缺省值是是2。正数画弧,。正数画弧,负数画扇形。数画扇形。aspect为垂直半径与水平半径之比,不能垂直半径与水平半径之比,不能为负数。数。aspect 1时,椭圆沿垂直方向拉沿垂直方向拉长,当,当aspect 1时,椭圆沿水平方向拉沿水平方向拉长。aspect的缺省的缺省值为1.0,在屏幕上,在屏幕上产生一个生一个标准准圆(非(非椭圆)。)。可以省略可以省略语法中法中间的某个参数,但不能省略分隔参的某个参数,但不能省略分隔参数的逗号。数的逗号。返回目录11.2 显示图片11.2.1 直接加载图片到窗体 在窗体上加在窗体上加载图片。片。单击Picture属性,打开属性,打开“加加载图片片”对话框。从框。从“搜搜寻”中中查找需加找需加载图片的位片的位置,在列表中置,在列表中选中文件名,中文件名,单击“打开打开”按按钮,加加载后的后的效果如效果如图。11.2.2 使用图像控件 窗体上添加窗体上添加Image控件,并根据控件,并根据图片大小片大小调整控件大小。整控件大小。(1)单击工具箱中的工具箱中的Image控件,在窗体上添加控件,在窗体上添加图像控件。像控件。(2)选中中Image1对象,象,设置其置其Picture属性,在属性,在“加加载图片片”对话框框中中选择一一张图片,片,单击“打开打开”按按钮。此。此时,选中的中的图片将添加到片将添加到Image控件中,并自控件中,并自动根据根据图片大小片大小调整控件的大小。整控件的大小。11.2.3 使用图片框控件设计浏览图形文件的形文件的图片片浏览器。器。(1)建立建立应用程序用用程序用户界面与界面与设置置对象属性。象属性。选择“新建新建”工程,工程,进入窗体入窗体设计器,首先增加文件系器,首先增加文件系统控件:控件:驱动器器列表框列表框Drive1、目、目录列表框列表框Dir1、文件列表框、文件列表框File1;再增加一个;再增加一个图片框片框Picture1。为此,只需修改此,只需修改File1的的Pattern属性属性为*.ico;*.bmp (2)编写程序代写程序代码。Private Sub Dir1_Change()File1.Path=Dir1.PathEnd SubPrivate Sub Drive1_Change()Dir1.Path=Drive1.DriveEnd SubPrivate Sub File1_Click()ChDrive Drive1.Drive ChDir Dir1.Path Picture1.Picture=LoadPicture(File1.FileName)End Sub返回目录结束结束返回目录