图形应用程序设计.ppt

上传人:牧羊曲112 文档编号:6257119 上传时间:2023-10-11 格式:PPT 页数:39 大小:347.32KB
返回 下载 相关 举报
图形应用程序设计.ppt_第1页
第1页 / 共39页
图形应用程序设计.ppt_第2页
第2页 / 共39页
图形应用程序设计.ppt_第3页
第3页 / 共39页
图形应用程序设计.ppt_第4页
第4页 / 共39页
图形应用程序设计.ppt_第5页
第5页 / 共39页
点击查看更多>>
资源描述

《图形应用程序设计.ppt》由会员分享,可在线阅读,更多相关《图形应用程序设计.ppt(39页珍藏版)》请在三一办公上搜索。

1、图形应用程序设计,本章要学习的绘图对象,颜色对象color画布对象graphics画笔对象pen笔刷对象brushes,颜色对象Color,用Color.FromArgb()设置颜色 使用该方法设置颜色是汇集透明程度、红色光、绿色光、蓝色光等四道不同性质的光线的调色效果,语法如下:Color.FromArgb(A,R,G,B),1、说明:A代表不透明度,从0至255共分成256个程度,数值越小代表越透明;数值越大代表越不透明。其中0代表完全透明,255代表完全不透明。A的默认值为255。2、R,G,B:三个量分别代表红、绿、蓝颜色光的强度,每个颜色值分别从0至255共分成256个强度,数值越大

2、表示该颜色光越强。,例:将picturebox1控件的背景色设成紫色Picturebox1.backcolor=color.fromArgb(255,0,255)取出Color的(A,R,G,B)自变量值语法:A=对象 Color.A R=对象 Color.R G=对象 Color.G B=对象 Color.B例:取出PictureBox1控件背景色的R自变量值。,练习:指出图片控件Picturebox背景色的颜色构成(A,R,G,B),Form1_Paint Dim A,R,G,B As Integer Label1.Text=目前颜色设置值:&vbNewLine&ARGB(&A&,&R&,

3、&G&,&B&)End Sub,练习:接上例增加调色功能,使能在picturebox控件中显示调色动态。,Dim A,R,G,B As Integer Sub showARGB()Label1.Text=目前颜色设置值:&vbNewLine&ARGB(&A&,&R&,&G&,&B&)Label2.Text=A=&A Label3.Text=R=&R Label4.Text=G=&G Label5.Text=B=&B End Sub,Private Sub TrackBar_Scroll(ByVal sender As System.Object,ByVal e As System.EventA

4、rgs)Handles TrackBar1.Scroll,TrackBar2.Scroll,TrackBar3.Scroll,TrackBar4.Scroll A=TrackBar1.Value R=TrackBar2.Value G=TrackBar3.Value B=TrackBar4.Value PictureBox1.BackColor=Color.FromArgb(A,R,G,B)Call showARGB()End Sub,用Color列举设置颜色 使用Color列举可以直接指定系统定义的颜色,这些被定义的颜色都是用英文来命名的,超过140个,常用的名称有red,green,blu

5、e,yellow,brown,white,black等。例:将Button1控件的背景色设置成粉红色。button1.backColor=color.pink,练习:接上例,增加设置为指定颜色功能,即按了有颜色的按钮时,使picturebox1控件内显示按钮的颜色,轨迹棒也自动跟着移动。,Form1_Paint Button1.BackColor=Color.Firebrick Button2.BackColor=Color.BurlyWood Button3.BackColor=Color.Linen Button4.BackColor=Color.Orchid Button5.BackCo

6、lor=Color.KhakiPrivate Sub Button_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Button1.Click,Button2.Click,Button3.Click,Button4.Click,Button5.Click PictureBox1.BackColor=sender.backcolor Call showARGB()End Sub,画布对象Graphics,声明与建立画布对象 一般在绘图时,需要一块画布供画家作画。语法:dim 画布对象 as graph

7、ics 画布对象=对象(控件).CreateGraphics()或:dim 画布对象 as graphics=对象(控件).CreateGraphics(),例:在窗体内建立一个名叫g的画布对象 dim g as graphics g=form1.CreateGraphics()或:dim g as graphics=form1.CreateGraphics(),例2:清理目前在图片框picShow控件上所绘制的图形。PicShow.refresh()删除画布对象 例:将画布对象g从主存储器中删除。g.dispose(),画笔对象pen,声明和建立画笔对象 dim 画笔对象 as new pe

8、n(颜色,粗细)或:dim 画笔对象 as pen 画笔对象=as new pen(颜色,粗细)例:dim p as new pen(color.green,5),说明:1、若省略粗细,默认为1 pixel。2、画笔对象颜色和粗细可用下列语法重新设置。画笔对象.color=颜色 画笔对象.width=粗细 例:p.color=color.fromArgb(128,55,0,255)p.width=3,绘制直线:drawLine方法语法:画布对象.drawLine(画笔对象,x1,y1,x2,y2)说明:(x1,y1)是直线的起点坐标,(x2,y2)是直线的终点坐标。例:在画布对象g上用画笔p绘

9、制坐标(100,50)到(200,270)之间的直线。dim p as new pen(color,green,5)g.drawline(p,100,150,200,270)或:g.drawline(new pen(color.green,5),100,150,200,270),绘制矩形:drawRectangle方法语法:Dim 矩形对象 as new rectangle(x,y,w,h)画布对象.drawRectangle(画笔对象,矩形对象)或:画布对象.drawRectangle(画笔对象,x,y,w,h)说明:(x,y)是矩形框的左上角起点坐标,w为矩形的宽度,h为高度,例:在画布对

10、象g上用画笔p绘制矩形,左上角坐标为(50,60),宽为100pixel,高为70pixel。Dim rec as new rectangle(50,60,100,70)g.drawRectangle(p,rec)或:g.drawRectangle(p,50,60,100,70),绘制多边形:drawPolygon方法语法:Dim 坐标对象()as point=new point(x1,y1),new point(x2,y2),new point(x3,y3),画布对象.drawPolygon(画笔对象,坐标对象)或:Dim p1 as point=new point(x1,y1)Dim p2

11、 as point=new point(x2,y2)Dim p3 as point=new point(x3,y3)Dim 坐标对象 as point()=p1,p2,p3,画布对象.drawPolygon(画笔对象,坐标对象),例:画一个三角形,三个顶点分别为(25,25)、(0,50)、(50,50)Dim pts()as point=new point(25,25),new point(0,50),new point(50,50)g.DrawRectangle(p,pts)或:Dim p1 as point=new point(25,25)Dim p2 as point=new poin

12、t(0,50)Dim p3 as point=new point(50,50)Dim pts as point()=p1,p2,p3,g.drawPolygon(p,pts),创建图形应用程序的一般步骤,1.创建画布,声明graphics对象2.用画笔对象pen绘制图形轮廓,并用color对象设置颜色,实例练习:以窗体为画布,绘制直线、矩形、多边形。,清理画布对象,画布对象.Clear(颜色)将画布对象的内容清理成指定的颜色。例:将画布对象g清理为白色 g.clear(color.white)对象.Refresh()将画布清理为原控件的底色。例1:清理目前在窗体上所绘制的图形。me.refre

13、sh(),绘制椭圆形:drawEllipse方法语法:Dim 矩形对象 as new rectangle(x,y,w,h)画布对象.drawEllipse(画笔对象,矩形对象)或:画布对象.drawEllipse(画笔对象,x,y,w,h)说明:(x,y)是椭圆外接框左上角坐标,w为椭圆的宽度,h为椭圆的高度。,例:在画布对象g上用画笔p绘制椭圆,椭圆外接框左上角坐标为(50,60),向右为100pixel,向下高为70pixel。dim rec as new rectangle(50,60,100,70)g.drawEllipse(p,rec)或:g.drawEllipse(p,50,60,

14、100,70),绘制弧形:drawArc方法语法:Dim 矩形对象 as new rectangle(x,y,w,h)画布对象.drawArc(画笔对象,矩形对象,startA,sweepA)或:画布对象.drawArc(画笔对象,x,y,w,h,startA,sweepA),说明:一个360度的圆弧是一个圆周,而(x,y)是圆外接框左上角坐标,w是圆周的宽度,h是高度.startA是圆弧起点角度,以一个参考点为圆心,圆心右侧水平线为0度,再以顺时针方向开始张开的角度为角度值。sweepA是由startA开始算起所张开的角度,sweepA若为正值则向顺时针方向张开;sweepA若为负值则向逆时

15、针方向张开。,例:在画布对象g上用画笔p绘制一个弧形,角度由270度画到0度。Dim rec as new rectangle(50,60,100,70)g.drawArc(p,rec,270,90)或:g.drawArc(p,50,60,100,70,270,90),绘制扇形:drawPie方法语法:Dim 矩形对象 as new rectangle(x,y,w,h)画布对象.drawPie(画笔对象,矩形对象,startA,sweepA)或:画布对象.drawPie(画笔对象,x,y,w,h,startA,sweepA),例:在画布对象g上用画笔p绘制一个扇形,角度由270度画到180度。

16、Dim rec as new rectangle(50,60,100,70)g.DrawPie(p,rec,270,-90)或:g.DrawPie(p,50,60,100,70,270,-90),使用画笔对象Pen所配合的绘图方法,只负责描绘图形的边框。若要进一步填满块的内部颜色,就必须使用笔刷对象brushes,但需要配合fillRectangle、fillPolygon、fillEllipse、fillPie等绘图方法。语法:brushes.颜色 fillRectangle、fillPolygon、fillEllipse、fillPie与前面讲的drawRectangle、drawPoly

17、gon、drawEllipse、drawPie内变量用法类似,笔刷对象brushes,实例:分别绘制如图所示图形。,-Form1_Paint-Dim g As Graphics g=Me.CreateGraphics g.DrawEllipse(New Pen(Color.Blue,4),20,20,50,70)g.FillEllipse(Brushes.Pink,120,20,50,70)g.DrawEllipse(New Pen(Color.Blue,4),220,20,50,70)g.FillEllipse(Brushes.Pink,220,20,50,70)先画边框再画内部颜色,会造成

18、边框会被遮盖一部分 g.FillEllipse(Brushes.Pink,320,20,50,70)g.DrawEllipse(New Pen(Color.Blue,4),320,20,50,70)可以达到预期的效果,绘制文字语法:dim f as new font(“字体名称”,fontSize,fontStyle)画布对象.drawString(“字符串文字”,f,笔刷对象,x,y)或:画布对象.drawString(“字符串文字”,new font(“字体名称”,fontSize,fontStyle),笔刷对象,x,y),实例:在画布上描绘出10列相同内容的文字,并使字体逐列变大。,-Form1_Paint-Dim g As Graphics g=Me.CreateGraphics()Dim i,s,x,y As Integer For i=1 To 10 s=6+i*3 大小 x=i*20 y=2*i 2+4*i 4 以抛物线的曲线来安排文字列的x与y的坐标 Dim f As New Font(隶书,s,FontStyle.Underline)g.DrawString(Visual Basic.NET,f,Brushes.Black,x,y)Next i,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号