Visual Basic.NET程序设计教程 教学课件 ppt 作者 陈志泊 第12章 Visual Basic.NET图形程序设计

上传人:E**** 文档编号:89396731 上传时间:2019-05-24 格式:PPT 页数:35 大小:280.50KB
返回 下载 相关 举报
Visual Basic.NET程序设计教程 教学课件 ppt 作者  陈志泊 第12章 Visual Basic.NET图形程序设计_第1页
第1页 / 共35页
Visual Basic.NET程序设计教程 教学课件 ppt 作者  陈志泊 第12章 Visual Basic.NET图形程序设计_第2页
第2页 / 共35页
Visual Basic.NET程序设计教程 教学课件 ppt 作者  陈志泊 第12章 Visual Basic.NET图形程序设计_第3页
第3页 / 共35页
Visual Basic.NET程序设计教程 教学课件 ppt 作者  陈志泊 第12章 Visual Basic.NET图形程序设计_第4页
第4页 / 共35页
Visual Basic.NET程序设计教程 教学课件 ppt 作者  陈志泊 第12章 Visual Basic.NET图形程序设计_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《Visual Basic.NET程序设计教程 教学课件 ppt 作者 陈志泊 第12章 Visual Basic.NET图形程序设计》由会员分享,可在线阅读,更多相关《Visual Basic.NET程序设计教程 教学课件 ppt 作者 陈志泊 第12章 Visual Basic.NET图形程序设计(35页珍藏版)》请在金锄头文库上搜索。

1、第十二章 Visual Basic.NET图形程序设计,12.1 GDI+绘图概述,12.1.1 GDI+的有关概念,1. GDI+的概念 GDI+是GDI(Graphics Device Interface,图形设备接口)的改进产品,它将Windows提供的图形函数库进行了封装,组织成各种形式的类,并将这些类组织到相应的命名空间中 2. GDI+的命名空间 GDI+的相关类主要分布在System.Drawing命名空间 3. GDI+中的Graphics类及其使用 Graphics类是绘制图形的最核心的类,该类的对象相当于一块画布,利用该类提供的DrawLine、DrawEllipse等40

2、多种方法,用户可以绘制出直线、椭圆等各种图形。,12.1.2 坐标系,各种容器的坐标系是容器的左上角为坐标原点(如果有菜单和工具栏,则原点在靠菜单和工具栏的下方),横向向右为x轴方向,纵向向下为y轴方向,长度单位为像素(Pixel)。 在GDI+坐标系中绘制数学函数y=f(x)的图形时,要使所画的图产生与数学坐标系相同的效果,则需要将坐标原点移到对象的中心位置(a,b),并将y轴坐标值乘以-1,在垂直方向翻转图形,这样,GDI+坐标系中的坐标(x,y)转换为数学坐标系的坐标(x1,y1)计算公式是:x1=a+x,y1=b-y。,Graphics对象提供的常用坐标变换方法,12.1.3 利用GD

3、I+绘制图形的方法步骤,(1)声明Graphics类的对象。 (2)利用相关的类建立画笔(Pen)、画刷(Brush)、字体(Font)等绘图工具,以便利用它们在绘图对象中使用它们进行绘图。 (3)调用Graphics对象的绘图方法,用已定义的画笔绘制图形,用已定义的画刷填充图形等。 (4)调用相关绘图对象的Dispose方法释放对象。,12.2 与绘图相关的对象及使用,12.2.1 System.Drawing命名空间中的常用类和结构,System.Drawing命名空间中的常用类,System.Drawing命名空间中的常用结构,12.2.2 Graphics对象,创建Graphics对象

4、 Graphics对象相当于绘图过程中所用的画布 Graphics类不能直接实例化,而必须通过以下三种方法: 方法1:使用窗体或控件的CreateGraphics方法创建。 方法2:利用窗体或控件的Paint事件的事件过程中的PaintEventArgs类型的参数创建。 方法3:使用Image类的派生类创建。,2. Graphics类的常用属性 3. Graphics类的常用方法,Graphics类的常用方法,(1)DrawLine方法 Graphics类的DrawLine方法主要有两种格式: 格式1:Public Sub DrawLine (pen As Pen,x1 As Integer,

5、y1 As Integer, x2 As Integer, y2 As Integer) 功能:利用画笔对象pen,在两点(x1,y1)和(x2,y2)之间画一条直线。 格式2:Public Sub DrawLine (pen As Pen,pt1 As Point,pt2 As Point) 功能:利用画笔对象pen,在两点pt1和pt2之间画一条直线。,(2)DrawRectangle方法 格式1: Public Sub DrawRectangle (pen As Pen, rect As Rectangle) 功能:利用画笔对象pen,画一个由参数rect结构所表示的矩形。 格式2: P

6、ublic Sub DrawRectangle (pen As Pen, x As Integer, y As Integer, width As Integer, height As Integer) 功能:利用画笔对象pen,绘一个左上角坐标在(x,y)处、参数width和height分别指定宽度和高度的矩形。,(3)DrawEllipse方法 格式1:Public Sub DrawEllipse (pen As Pen, rect As Rectangle) 功能:利用画笔对象pen,画一个由参数rect结构所表示的矩形为外接矩形的椭圆。 格式2:Public Sub DrawEllip

7、se (pen As Pen,x As Integer,y As Integer, width As Integer, height As Integer) 功能:利用画笔对象pen,绘一个以外接矩形为边界的椭圆,该外接矩形左上角坐标在(x,y)处、参数width和height分别指定宽度和高度。,(4)DrawPolygon方法 格式:Public Sub DrawPolygon ( pen As Pen, points As Point() ) 功能:利用画笔对象pen,画一个由参数points指定各顶点坐标的多边形。 (5)DrawArc方法 DrawArc方法有多种调用格式,其常用的格

8、式是: 格式1:Public Sub DrawArc (pen As Pen, rect As Rectangle, startAngle As Single, sweepAngle As Single) 功能:利用画笔对象pen,绘制以参数rect为外接矩形的椭圆的一部分圆弧。, 格式2:Public Sub DrawArc (pen As Pen, x As Integer, y As Integer, width As Integer, height As Integer, startAngle As Integer,sweepAngle As Integer) 功能:利用画笔对象pen

9、,绘一个以外接矩形为边界的椭圆的一部分圆弧,该外接矩形左上角坐标在(x,y)处、参数width和height分别指定宽度和高度。 (6)DrawPie方法 DrawPie方法有多种调用格式,其常用的格式是: Public Sub DrawPie (pen As Pen, rect As Rectangle, startAngle As Single, sweepAngle As Single) 功能:利用画笔对象pen,绘制以参数rect为外接矩形的椭圆的一部分扇形。,(7)DrawString方法 格式:Public Sub DrawString (s As String,font As F

10、ont,brush As Brush,point As PointF) 功能:利用指定的画刷对象和字体对象,在指定的位置绘制文字。 (8)FillEllipse方法 该方法有多种格式,常用的格式是: 格式:Public Sub FillEllipse ( brush As Brush,rect As Rectangle) 功能:用指定的画刷对象填充由外接矩形所决定的椭圆。,(8)FillPie方法 该方法有多种格式,常用的格式是: Public Sub FillPie ( brush As Brush,rect As Rectangle, startAngle As Single, sweep

11、Angle As Single) 功能:利用画笔对象pen,填充以参数rect为外接矩形的椭圆的一部分扇形。 (9)FillPolygon方法 该方法有多种格式,常用的格式是: 格式:Public Sub FillPolygon ( brush As Brush, points As Point() 功能:用指定的画刷对象填充多边形。,(10)FillRectangle方法 该方法有多种格式,常用的格式是: 格式:Public Sub FillRectangle ( brush As Brush, rect As Rectangle) 功能:用指定的画刷填充矩形。 (11)FillRegion

12、方法 格式:Public Sub FillRegion ( brush As Brush,region As Region ) 功能:用指定的画刷填充区域。,12.2.3 画笔Pen对象及使用,Pen对象可由System.Drawing命名空间中的Pen类来创建,它如同一支绘图时所使用的笔。 Pen对象具有宽度、样式和颜色三种属性。 1. Pen类的构造函数 Pen类的构造函数有以下4种格式: (1)格式1:Public Sub New (color As Color) (2)格式2:Public Sub New (color As Color,width As Single) (3)格式3:

13、Public Sub New (brush As Brush) (4)格式4:Public Sub New (brush As Brush,width As Single) Dim p As New Pen(Color.Blue,2) 表示创建一个线宽为2个像素的蓝色画笔。,2. Pen类的常用方法 Pen类提供SetLineCap方法用来设置画笔所画直线的起始端点和终止端点的样式,该方法的格式是: Public Sub SetLineCap (startCap As LineCap,endCap As LineCap, dashCap As DashCap ) 参数startCap和endC

14、ap为线端起始端和终止端的样式(线帽),LineCap枚举成员及含义,DashCap枚举成员及含义,3. Pen类的常用属性,DashStyle枚举成员及含义,【例12.1】在窗体上按以下要求画出所需要的图形: (1)在(10,20)、(100,20)之间画线,线段左端点为方形线帽、右端为箭头状锚头帽,线宽为5个像素、线段颜色为蓝色。 (2)在两点(10,50)和(100,50)之间画线,线段起点和终点线帽都为方形、线宽为2个像素、线段颜色为蓝色、线型为点划线。 (3)在两点(10,80)和(100,80)之间画线,线宽为3个像素、线段颜色为红色、线型为实线。 (4)以(10,110)为左上角

15、坐标,宽度为90,高度为30画矩形,线宽为2个像素、线段颜色为黄色、线型为点线。 (5)用指定的画笔和外接矩形画椭圆,该矩形以(10,150)为左上角坐标,宽度为90,高度为30,矩形连框的线宽为1个像素、线段颜色为黑色、线型为实线。,12.2.4 画刷Brush对象及使用,不能直接用Brush类创建Brush对象,因为Brush类不能被实例化。而通常使用Brush类的派生类创建所需要的Brush对象。 1. SolidBrush画刷 SolidBrush类用来定义单一颜色的画刷对象,其构造函数为: Public Sub New (color As Color) 2. HatchBrush画刷

16、 用HatchBrush类可以定义阴影画刷,可以定义前景色和背景色及阴影风格,前景色定义线条的颜色,背景色定义各线条之间间隙的颜色。,(1)构造函数 其构造函数的常用格式有以下几种: 格式1:Public Sub New (hatchstyle As HatchStyle, foreColor As Color) 功能:以参数hatchstyle指定的图案或阴影方式和foreColor指定的前景颜色创建画刷。 格式2:Public Sub New (hatchstyle As HatchStyle,foreColor As Color, backColor As Color) 功能:以参数hatchstyle指定的图案或阴影方式、参数foreColor指定的前景颜色、参数backColor指定的背景颜色创建画刷。,HatchStyle部分枚举成员及含义,(2)HatchBrush的常用属性 BackgroundColor属性:获取HatchBrush对象的背景色。 ForegroundColor属性:获取HatchBrush对象的前景色。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号