
VB第七章图形与多媒体.ppt
27页,第七章 图形与多媒体,主要内容,7.1,使用,VisualBasic,作画,7.2,在窗体中使用图片,7.3,播放多媒体信息,7.1 使用VisualBasic作画,一、设置,AutoRedraw,属性,每个窗体和图片框都具有,AutoReadraw,属性AutoRedraw,是,Boolean,类型的属性,当它设置为,True,时,会把图形输出保存在内存里,这样就可以用,AutoReadraw,属性创建持久的图形AutoRedraw,的默认值是,False,当,AutoRedraw,设置为,False,,窗体上显示的任何由图形方法创建的图形如果被另一个窗口暂时挡住,将会丢失另外,如果扩大窗体,窗体边界外的图形将会丢失当窗体的,AutoRedraw,属性设置为,True,时,,VisualBasic,会将图形方法储存于内存中的一块“画布”上应用程序复制此画布的内容,以便重新显示被其他窗口暂时隐藏起来的图形7.1 使用VisualBasic作画,二、,VisualBasic,图形的坐标系统,1,、坐标单位,坐标单位即坐标的刻度,缺省的坐标系统采用,twip(,缇,),为单位设置对象的,ScaleMode,属性可以改变坐标系统的单位,,属性值,描述,0,自定义坐标系统,若直接设置了,ScaleWidth,、,ScaleHeight,、,ScaleTop,或,ScaleLeft,,则,ScaleMode,属性自动设为,0,。
1,缇,这是缺省刻度1,,,440,缇等于一英寸2,磅,,72,磅等于一英寸3,像素,像素是监视器或打印机分辨率的最小单位每英寸里像素的数目由设备的分辨率决定4,字符,打印时,一个字符有,1/6,英寸高、,1/12,英寸宽5,英寸,6,毫米,7,厘米,7.1 使用VisualBasic作画,2,、坐标方法,使用,Scale,方法也可以设置用户自定义的坐标系统语法:,.Scale(x1,y1)-(x2,y2),说明:,(x1,y1),设置,的左上角坐标,,(x2,y2),设置,的右下角坐标使用,Scale,方法将把,在,x,方向上分为,x2-x1,等分,在,y,方向上分为,y2-y1,等分使用,Scale,方法将自动把,ScaleMode,属性设置为,0,7.1 使用VisualBasic作画,3,、坐标属性,属性,说明,ScaleTop,对象左上角的纵坐标,ScaleLeft,对象左上角的横坐标,ScaleWidth,对象右下角的横坐标,ScaleHeight,对象右下角的纵坐标,CurrentX,当前点的横坐标,CurrentY,当前点的纵坐标,例如,代码:,Me.ScaleTop=10,Me.ScaleLeft=10,Me.ScaleWidth=90,Me.ScaleHeight=110,上述代码与代码,Me.Scale(10,10)-(11,90),是等效的。
7.1 使用VisualBasic作画,三、使用颜色,1,、,VisualBasic,中的颜色属性,VisualBasic,中的许多控件,有决定控件显示颜色的属性属性,描述,BackColor,对用于绘画的窗体或控件设置背景颜色如果在绘图方法进行绘图之后改变,BackColor,属性,则已有的图形将会被新的背景颜色所覆盖ForeColor,设置绘图方法在窗体或控件中创建文本或图形的颜色改变,ForeColor,属性不影响已创建的文本或图形BorderColor,给形状控件边框设置颜色FillColor,为用,Circle,方法创建的圆和用,Line,方法创建的方框,设置填充颜色7.1 使用VisualBasic作画,2,、颜色函数,VisualBasic,提供了两个专门处理颜色的函数,RGB,和,QBColor,函数1)RGB,函数,在这两个颜色函数中,,RGB,是最常用的一个语法:,RGB(red,green,blue),说明:,red,、,green,、,blue,分别表示颜色的红色成分、绿色成分、蓝色成分取值的范围都是从,0,到,255,RGB,函数采用红、绿、蓝三基色原理,返回一个,Long,整数,用来表示一个,RGB,颜色值。
表,7.5,列出一些常见的标准颜色以及这些颜色的红、绿、蓝三原色的成分值7.1 使用VisualBasic作画,(2)QBColor,函数,QBColor,函数返回一个用来表示所对应颜色值的,RGB,颜色码语法:,QBColor(Color),说明:,Color,参数是一个介于,0,到,15,的整型值,,7.1 使用VisualBasic作画,四、画点,(PSet,方法,),Pset,方法可以在对象的指定位置,(x,y),,按给定的像素颜色画点语法:,.PSet Step(x,y),color,说明:,1,、,为可选的对象表达式如果省略,具有焦点的窗体作为,2,、,Step,为可选的关键字指定相对于由,CurrentX,和,CurrentY,属性提供的当前图形位置的坐标3,、,(x,y),为必需的,Single(,单精度浮点数,),,设置点的水平,(x,轴,),和垂直,(y,轴,),坐标4,、,Color,为可选的长整型数,设置点的颜色如果它被省略,则使用当前的,ForeColor,属性值可用,RGB,函数或,QBColor,函数指定颜色7.1 使用VisualBasic作画,五、画直线、矩形方法,(Line,方法,),用,Line,方法可以在对象上的两点之间画直线或矩形。
语法:,.Line Step x1,y1 Step(x2,y2),Color,BF,说明:,1,、,为可选的对象表达式,如果省略,具有焦点的窗体将作为“对象”2,、,Step,为可选的关键字,用来指定要画出的点相对最后画出点的位置3,、,(x1,y1),为可选的单精度浮点数,直线或矩形的起点坐标ScaleMode,属性决定了使用的度量单位如果省略,起始于由,CurrentX,和,CurrentY,指示的位置4,、,(x2,y2),为必需的单精度浮点数,直线或矩形的终点坐标7.1 使用VisualBasic作画,5,、,Color,为可选的长整型数,设置直线或矩形的颜色如果它被省略,则使用,ForeColor,属性值可用,RGB,函数或,QBColor,函数指定颜色6,、,B,为可选的如果包括,则利用对角坐标画出矩形F,选项规定矩形以矩形边框的颜色填充不能不用,B,而用,F,但可以不用,F,光用,B,7,、画连结的线段时,前一条线的终点就是后一条线的起点8,、执行,Line,方法时,,CurrentX,和,CurrentY,属性被参数设置为终点7.1 使用VisualBasic作画,例如:,Line(500,500)-(500,1000),可画出一条直线。
Line(500,500)-(1000,1000),可画出一条斜线Line(100,200)-(150,250),等价于,line(100,200)-step(50,50),Line(100,100)-(1000,1000),vbred,b,可画出边框为红色的一个矩形Line(100,100)-(1000,1000),vbred,bf,可画出边框为红色的一个矩形,并用红色填充矩形7.1 使用VisualBasic作画,六、,清除绘图区方法,Cls,方法可以清除,Form,或,PictureBox,中由图形语句或打印语句在运行时所生成的图形和文本,清除后的区域以背景色填充,设计时使用,Picture,属性设置的背景位图和放置的控件不受,Cls,影响语法:,Object.Cls,例如:,Picture1.Cls,Form1.cls,7.1 使用VisualBasic作画,七、画圆、椭圆及圆弧,(Circle,方法,),Circle,方法可画出圆形和椭圆形的各种形状另外,,Circle,方法还可以画出圆弧,(,圆的一部分,),和楔形饼块使用变化的,Circle,方法,可画出多种曲线语法:,.CircleStep(x,y),color,start,end,aspect,说明:,1,、,(x,y),:指定圆、椭圆或弧的中心坐标。
2,、半径:指定圆、椭圆或弧的半径3,、,Color,:可选项,如果被省略,则使用,ForeColor,属性值可用颜色函数指定颜色4,、,Start,和,End,:指定,(,以弧度为单位,),弧或扇形的起点以及终点位置其范围从,-2,到,2,起点的缺省值是,0,,终点的缺省值是,2,正数画弧,负数画扇形5,、,aspect,:为垂直半径与水平半径之比,不能为负数Aspect1,时,椭圆沿垂直方向拉长,当,aspect1,时,椭圆沿水平方向拉长Aspect,的缺省值为,1.0,,在屏幕上产生一个标准圆6,、可以省略语法中间某个参数,但不能省略分隔参数的逗号指定的最后一个参数后面的逗号是可以省略的7,、,Circle,执行后,,CurrentX,和,CurrentY,属性被参数设置为中心点7.1 使用VisualBasic作画,八、,DrawMode,属性的用法,DrawMode,属性可以决定,当把一个样式画在另一个之上时,能够取得什么结果尽管改变,DrawMode,属性,经常会带来一些影响,(,尤其是彩色系统,),,但是当在一个黑的或是纯白色的背景上,或者是在未定义颜色的背景上绘制时,是没有必要再用该属性的。
可以将,DrawMode,设置为从,116,的值设置值,描述,4,Not Copy,笔画出相反的直线样式,不管该处原来的样式如何7,Xor,笔显示出直线样式和现存显示的区别用这种模式绘制对象两次,将精确地恢复该处原来的背景11,无操作,效果相当于关掉了绘画13,Copy,笔,(,默认值,),使用直线的样式,不管该处原来的存在如何7.1 使用VisualBasic作画,九、设置线宽和线形,(DrawWidth,,,DrawStyle,属性,),1,、,DrawWidth,属性,DrawWidth,属性用来指定图形方法输出时线的宽度设置值以象素为单位,设置后会影响,Pset,、,Line,和,Circle,方法语法:,DrawWidth=,说明:,(1)Object,:是窗体或图片框对象2)size,:为可选的,其范围从,1,到,32,767,该值以像素为单位表示线宽缺省值为,1,7.1 使用VisualBasic作画,2,、,DrawStyle,属性,DrawStyle,属性,返回或设置一个值,以决定图形方法输出的线型的样式语法:,DrawStyle=,说明:,(1)Object,:为对象表达式,其值是窗体或图片框对象。
2)Number,:为整型值,用于指定线的外观3)DrawStyle,属性有,7,种值:,06,,如表所示,用来产生不同间隔的实、虚线,缺省值为,0,常数,设置值,描述,VbSolid,0,(,缺省值,),实线,VbDash,1,虚线,VbDot,2,点线,VbDashDot,3,点划线,VbDashDotDot,4,双点划线,VbInvisible,5,无线,VbInsideSolid,6,内实线,7.1 使用VisualBasic作画,十、设置填充图案,(FillStyle,、,FillColor,属性,),如果要对绘制好的封闭图形进行填充,就要设置,fillStyle,和,FillColor,两个属性FillStyle,可以有,07,一共,8,个取值,当对图形进行填充时,填充图案的颜色是由,FillColor,属性设置的十一、使用图形控件,(Line,控件和,Shape,控件,),Shape,控件和,Line,控件。












