收藏 分享(赏)

第11章 图形和绘图操作.doc

上传人:tkhy51908 文档编号:6357982 上传时间:2019-04-09 格式:DOC 页数:15 大小:52KB
下载 相关 举报
第11章 图形和绘图操作.doc_第1页
第1页 / 共15页
第11章 图形和绘图操作.doc_第2页
第2页 / 共15页
第11章 图形和绘图操作.doc_第3页
第3页 / 共15页
第11章 图形和绘图操作.doc_第4页
第4页 / 共15页
第11章 图形和绘图操作.doc_第5页
第5页 / 共15页
点击查看更多>>
资源描述

1、第 11 章 图形和绘图操作文库帮手网 免费帮下载 百度文库积分 资料本文由 renzhenws 贡献ppt 文档可能在 WAP 端浏览体验不佳。建议您优先选择 TXT,或下载源文件到本机查看。第 11 章 图形和绘图操作 章坐标系统 使用颜色 使用绘图工具 使用图形方法绘图坐标X 值:是沿 X 轴点的位置,窗体中最左端是缺省位置 0 是沿 X 轴点的位置,窗体中最左端是缺省位置 0 是沿 Y 轴点的位置,窗体中最上端是缺省位置 0 Y 值:是沿 Y 轴点的位置,窗体中最上端是缺省位置 0 X,Y 的值可以小于 的值可以小于 0 X,Y 的值可以小于 0,也可以大于容器宽度或高度相对于 Fo

2、rm1 (0,0) 相对于 Form1 (1200,800) 相对于 Frame1 (0,0)坐标值的刻度缺省使用缇( 缺省使用缇(Twip)为测量单位. )为测量单位. 缇是打印机的一磅的 1/20(1440 缇等于一英寸;567 缇 缇等于一英寸; 缇是打印机的一磅的 ( 缇等于一英寸 缇 等于一厘米) 这些测量值指示对象打印后的大小. 等于一厘米 ) . 这些测量值指示对象打印后的大小 . 利用缇可以精确地控制图形打印输出的质量. 利用缇可以精确地控制图形打印输出的质量. 通过设置控件的 ScaleMode 属性 , 可以采用不同的刻 属性, 通过设置控件的 属性 度 来表示坐标值Sca

3、leMode 属性 属性ScaleMode 属性,可以取以下常量值: 属性,可以取以下常量值: 属性vbUser : 0 , 用 户 自 定 义 . 若 直 接 设 置 了 ScaleWidth , ScaleHeight,ScaleTop 或 ScaleLeft,则 ScaleMode 属性自动 , , 设为 0 vbTwips(缺省值):1,缇 (缺省值) , vbPoints:2, vbPoints:2,磅,72 磅等于一英寸 72 磅等于一英寸 vbPixels:3,像素.像素是监视器或打印机分辨率的最小单位, : ,像素.像素是监视器或打印机分辨率的最小单位, 每英寸里像素的数目由设

4、备的分辨率决定 vbCharacters: 4, 字符 . 打印时 , 一个字符有 1/6 英寸高 , 英寸高, : , 字符. 打印时, 1/12 英寸宽 vbInchs:5,英寸 : , vbMillimeters:6,毫米 : , vbCentimeters:7,厘米 : ,颜色指定颜色有四种方式: 指定颜色有四种方式:使用 RGB 函数,该函数有三个参数,分别取值 0 255; RGB 函数 1) 使用 RGB 函数,该函数有三个参数,分别取值 0-255; 使用 QBColor 函数, 该函数有一个参数, 取值 0 15, QBColor 函数 2) 使用 QBColor 函数 ,

5、该函数有一个参数 , 取值 0-15 , 16 种 QuickBasic 颜色中的一种 颜色中的一种; 16 种 Microsoft QuickBasic 颜色中的一种; 使用内部描述颜色的常量, vbRed; 3) 使用内部描述颜色的常量,如 vbRed; 直接输入一种颜色值. 4) 直接输入一种颜色值.1) 调色板颜色值 : 正常的 RGB 颜色的有效范围 , 是从 0 到 调色板颜色值: 正常的 RGB 颜色的有效范围, 是从 0 RGB 颜色的有效范围 16,777,215( PictureBox 控件中 文件,就可将图片加载到PictureBox 控件中; 2. 从其它应用程序中复制

6、图形后把它粘贴到PictureBox 控 从其它应用程序中复制图形后把它粘贴到PictureBox PictureBox 控 件中. 件中. 3. 在程序中使用LoadPicture 函数对 Picture 属性赋值,因 在程序中使用LoadPicture 函数对 Picture 属性赋值, LoadPicture 函数对Picture 属性赋值 Picture 属性是对象类型 所以需要使用 Set 关键字, 属性是对象类型, Set 关键字 为 Picture 属性是对象类型,所以需要使用 Set 关键字, 如: Set Picture1.Picture = LoadPicture(“d:m

7、ap中国 中国.jpg“) 中国 Set Picture2.Picture = LoadPicture(“d:map美国 美国.jpg“) 美国 Set Picture2.Picture = LoadPicture 清除图片PictureBox 控件 PictureBox 控件AutoSize 属性: 使控件自动调节以适应图像大小 属性: 属性 第一个图形框 第一个图形框 AutoSize 属性为 属性为 False 属性为 第二个图形框 AutoSize 属性为 属性为 True 第二个图形框 属性为PictureBox 控件 PictureBox 控件图形框有三组表示高和宽的属性,分别代表

8、不同的含义: 图形框有三组表示高和宽的属性,分别代表不同的含义: 图形框控件的高和宽:同其它控件一样,PictureBox 控件的 图形框控件的高和宽:同其它控件一样, 控件的 Height 和 Width 属性分别记录图形框控件所占空间的高度和宽 属性分别记录图形框控件所占空间的高度和宽 和 属性 度. 图片的高和宽:图片可能小于或超过控件的范围,要取得图 图片的高和宽:图片可能小于或超过控件的范围, 片的真实大小,可以利用控件的 Picture 对象来获取,Picture 对象来获取, 片的真实大小,可以利用控件的 对象来获取 对象的 Height 和 Width属性分别记录图片的高度和宽

9、度,如 属性分别记录图片的高度和宽度 对象的 和 属性分别记录图片的高度和宽度, Picture1.Picture.Height 可取得第一个图形框内图片的高度, 可取得第一个图形框内图片的高度, 可取得第一个图形框内图片的高度 但要注意的是这两个属性的度量单位与控件的缺省度量单位 不同. 不同. 图形框内部绘图区的高和宽:在 VB 中,PictureBox 控件有两 图形框内部绘图区的高和宽: 中 控件有两 个特殊的属性: 个特殊的属性:ScaleWidth 和 ScaleHeight,它们代表的是图 和 , 形框内部区域的水平或垂直度量单位, 形框内部区域的水平或垂直度量单位,图形框内部绘

10、图区的 精确尺寸应略小于图形框的尺寸. 精确尺寸应略小于图形框的尺寸.PictureBox 控件 PictureBox 控件可以利用图形框的方法在图形框上绘制文字或 图形 常用方法: 常用方法: Print 输出文本 输出文本 Circle, Line, Point, Pset画图 画图 PaintPicture 方法, 在控件上绘制图像文件, 方法, 方法 在控件上绘制图像文件, 可以实现图像的缩放,平铺,淡化效果等. 可以实现图像的缩放,平铺,淡化效果等.Image 控件 Image 控件只能用于显示图像,不能作为容器, 只能用于显示图像,不能作为容器,加载速度快 Picture 属性,显

11、示的图像,缺省情况下,Image控件 属性, 属性 显示的图像,缺省情况下, 控件 总是根据图片大小自动调整其尺寸, 总是根据图片大小自动调整其尺寸,而不管设计时所 定义的控件尺寸, 定义的控件尺寸,这样图片能保持其原始尺寸并得到 完整的显示. 完整的显示. Stretch 属性,设定图像是否自动调整大小适应控件 属性, 属性一个图片显示程序【例】编写图片显示程序,提供图片按照窗口 编写图片显示程序, 高度,按照窗口宽度和实际大小三种方式显示. 高度,按照窗口宽度和实际大小三种方式显示.一个图片显示程序使用 使用 PictureBox 作为容器,使用 Image 来显示图片,因 作为容器,使用

12、 来显示图片, 作为容器 来显示图片 不仅可以以原始尺寸显示图片, 为 Image 不仅可以以原始尺寸显示图片,同时图片会 不仅可以以原始尺寸显示图片 自动调节适应 Image1 控件尺寸 自动调节适应 控件尺寸 当适应窗口高度时,将 Image1 控件的 当适应窗口高度时, 控件的 Height 属性设置 控件的 属性设置 控件的内部区域的高度, 为 Picture1 控件的内部区域的高度,同时按照图片比 控件的内部区域的高度 例计算 Width 属性值,最后设置 属性值, 属性为 True, 例计算 属性值 最后设置 Stretch 属性为 属性为 , 图片便自动适应窗口高度显示. 图片便

13、自动适应窗口高度显示.Private Sub optHeight_Click() Image1.Width = Image1.Width*Picture1.ScaleHeight / Image1.Height Image1.Height = Picture1.ScaleHeight Image1.Stretch = True End Sub一个图片显示程序当适应窗口宽度时,将 Image1 控件的 当适应窗口宽度时, 控件的 Width 属性 控件的 属性 设置为 Picture1 控件的内部区域的宽度,同时按 控件的内部区域的宽度, 设置为 控件的内部区域的宽度 照图片比例计算 Heigh

14、t 属性值,同样设置 属性值, 照图片比例计算 属性值 同样设置 Stretch 属性为 True,图片便自动适应窗口宽度显示.代 属性为 ,图片便自动适应窗口宽度显示. 码如下: 码如下:Private Sub optWidth_Click() Image1.Height= Image1.Height*Picture1.ScaleWidth / Image1.Width Image1.Width = Picture1.ScaleWidth Image1.Stretch = True End Sub一个图片显示程序选择实际大小时,只要将 Image1 控件的 选择实际大小时,只要将 控件的 S

15、tretch 控件的 属性设置为 False 即可,代码如下: 即可, 属性设置为 即可 代码如下:Private Sub optActual_Click() Image1.Stretch = False End Sub直线控件(Line) 直线控件(Line)通过设置 Line 控件的属性,可以定义直线的位置,长度, 控件的属性,可以定义直线的位置,长度, 通过设置 控件的属性 颜色和样式等外观.但是 Line 控件功能有限. 控件功能有限. 颜色和样式等外观.但是 控件功能有限 1,BorderStyle 属性:提供六种直线样式: 透明 ,实线 , 属性: , 属性 提供六种直线样式:透明

16、,实线, 虚线,点线,点划线,双点划线和内实线. 虚线,点线,点划线,双点划线和内实线. 2,BorderColor 属性:指定直线的颜色. 属性: , 属性 指定直线的颜色. 3,移动和调整线段长度 , 在运行时,不能用 在运行时,不能用 Move 方法移动直线,只可更改直线 方法移动直线, 方法移动直线 控件的 X1, , 和 属性来移动控件或调整直线 控件的 , X2, Y1和 Y2 属性来移动控件或调整直线 控件长度. 和 属性设置直线控件左端点的坐标 属性设置直线控件左端点的坐标, 控件长度.X1 和Y1 属性设置直线控件左端点的坐标, X2 和 Y2 属性设置直线控件右端点的坐标.

17、 属性设置直线控件右端点的坐标. 和 属性设置直线控件右端点的坐标形状控件(Shape) 形状控件(Shape)可用 Shape 控件在窗体,框架或图形框中创建下述预 控件在窗体, 可用 控件在窗体 定义形状: 矩形, 正方形, 椭圆形, 圆形, 定义形状 : 矩形 , 正方形 , 椭圆形 , 圆形 , 圆角矩 形或圆角正方形. 形或圆角正方形. 1, Shape 属性 : 指定形状 , 有 六种预定义的形状 . 如 属性: , 属性 指定形状, 六种预定义的形状. vbShapeRectangle , vbShapeSquare , vbShapeOval 等. 2,FillStyle 属性

18、:提供了若干预定义的填充样式图案, 属性:提供了若干预定义的填充样式图案, , 如实线,水平线,十字线等. 如实线,水平线,十字线等. 3,FillColor 属性:设置填充颜色.该属性不影响边框颜 , 属性:设置填充颜色. 属性 属性) 色(BorderColor属性) 属性绘图方法VB 提供有以下创建图形的方法,这些图形方法适用于 VB 提供有以下创建图形的方法, 提供有以下创建图形的方法 窗体和图形框控件. 窗体和图形框控件. 1)Cls:清除所有图形和调用 Print 方法所作的输出 :清除所有图形和调用 方法所作的输出 2)PSet:设置屏幕指定位置像素的颜色 : 3)Line:画线

19、,矩形,或填充框 :画线,矩形, 4)Circle:画圆,椭圆,或圆弧 :画圆,椭圆, 5)Point:返回指定点的颜色值 : 6)PaintPicture:在任意位置画出图形 :使用 Pset 方法画点 方法画点 使用object.PSet (x, y), colorx 和 y 参数为所画点的坐标 是单精度参数,所以它们可 和 参数为所画点的坐标 是单精度参数, 参数为所画点的坐标,是单精度参数 以接受整数或分数的输入,可以适应不同的坐标系. 以接受整数或分数的输入,可以适应不同的坐标系. color 参数指定点的颜色,该参数可以使用任意一种方 参数指定点的颜色, 参数指定点的颜色 法来指定

20、.如果没有指定 color 参数, PSet 将像素设置 参数, 法来指定 . 如果没有指定 参数 将像素设置 为前景色( 对象的ForeColor 属性). 属性) 为前景色(object 对象的 对象的 属性 下述语句在当前窗体, 窗体和 Picture1 图形框 下述语句在当前窗体,MyForm 窗体和 窗体和 图形框 上设置各种点: 上设置各种点: PSet (10.75, 50.33) MyForm.PSet (230, 1000) Picture1.PSet (1.5, 3.2) PSet (50, 75), RGB(0, 0, 255)Pset 方法示例 方法示例【例】编写程序,

21、在窗体上随机画出各种颜色的点. 编写程序,在窗体上随机画出各种颜色的点.Sub Form_Click() Dim R As Integer, G As Integer, B As Integer Dim XPos As Integer, YPos As Integer Do 设置红,绿,兰随机颜色值,赋值后会自动转换为整数 设置红, 兰随机颜色值, R = 255 * Rnd Rnd 函数:生成一个小于 大 函数: 函数 生成一个小于1 大 G = 255 * Rnd 于等于 0 的随机数 于等于 的随机数 B = 255 * Rnd 设置水平和垂直位置的随机坐标值 DoEvents:因为循环

22、没有给 : XPos = Rnd * ScaleWidth YPos = Rnd * ScaleHeight 定结束条件(死循环), ),程 定结束条件(死循环),程 用 PSet 画点 画点 序启动后将无法正常中止, 序启动后将无法正常中止, PSet (XPos, YPos), RGB(R, G, B) DoEvents 函数允许操作系统 函数允许操作系统 DoEvents 获取控制权以处理其他事件. 获取控制权以处理其他事件. Loop End Sub点的尺寸PSet 方法所画点的尺寸取决于对象的 方法所画点的尺寸取决于对象的 DrawWidth 属性 方法所画点的尺寸取决于对象的 属性

23、 缺省时 DrawWidth 为 1,PSet 就将一个像素的点设 值.缺省时 为 , 就将一个像素的点设 置为指定颜色. 大于 1, 置为指定颜色.当DrawWidth 大于 ,则点的尺寸将变 大于 使其中心位于指定坐标.这样只要 DrawWidth 足 大 , 使其中心位于指定坐标 . 这样只要 足 够大, 就可以画各种颜色的实心圆了. 够大,PSet 就可以画各种颜色的实心圆了. 就可以画各种颜色的实心圆了 Form1.DrawWidth = Rnd * 50 + 1擦除点擦除一点,只要把其颜色设置为背景色即可,如: 只要把其颜色设置为背景色即可,Form1.PSet (50, 75),

24、 Form1.BackColor指定点的坐标有两种方法来指定点的坐标: 有两种方法来指定点的坐标:1) 使用参数(x, y)指定点的坐标.如:PSet (20,20) 使用参数( )指定点的坐标. 2) 当在参数(x, y) 前面加上 Step 关键字后 , 就是相 关键字后, 当在参数 ( ) 对定位, 当前坐标的偏移量. 对定位,(x, y)指定的就是相对当前坐标的偏移量. )指定的就是相对当前坐标的偏移量 如:Pset Step (20,20)当前的坐标点就是调用图形方法或 Print 方法所画最后点的位置, 方法所画最后点的位置, 当前的坐标点就是调用图形方法或 方法所画最后点的位置

25、该位置由对象的 CurrentX 和 CurrentY 属性保存,它们的初始值 属性保存 该位置由对象的 和 属性保存, 都为 0. 都为 . 比如 PSet 可相对最后所画点的位置向下画点: 可相对最后所画点的位置向下画点: 比如 可相对最后所画点的位置向下画点 For i=0 to 1000 PSet Step (1, 0) Next 因为是循环画点,所以上述代码可以得到一条水平线. 因为是循环画点,所以上述代码可以得到一条水平线.使用 Line 方法画线 方法画线 使用Line 方法可以画出一条直线,指定直线的起点,终点和颜色 , 方法可以画出一条直线,指定直线的起点,终点和颜色, 方法

26、可以画出一条直线 语法为: 语法为:object.Line (x1, y1)(x2, y2), color第一对坐标为起点,第二对坐标为终点. 第一对坐标为起点,第二对坐标为终点.Line (0, 0)-(ScaleWidth, ScaleHeight) Line (0, ScaleHeight)-(ScaleWidth, 0) 从左上角到右下角的对角线 从左下角到右上角的对角线其中第一对坐标(x1, y1)是可选的.如果省略,将把该对象的当 是可选的. 其中第一对坐标 是可选的 如果省略, 前 坐 标 位 置 ( CurrentX 和 CurrentY 属 性 ) 作 为 线 的 起 点 .

27、 Color 如果省略,则使用对象的 如果省略, 属性为线的颜色. 如果省略 则使用对象的 ForeColor 属性为线的颜色. 属性为线的颜色 方法一样, 方法也支持使用关键字 Step 来指定相对 与 PSet 方法一样, Line方法也支持使用关键字 方法一样 方法也支持使用关键字 来指定相对 位置.假设当前坐标为(500, 500): 位置.假设当前坐标为 :Line -(1000, 0) 从(500, 500)到(1500, 500)的一条水平线 到 的一条水平线 Line -Step(0, 1000) 从(1500, 500)到(1500, 1500)的一条垂直线 到 的一条垂直线

28、 Line Step(0, 1000)-Step(200, 200) 从(1500, 2500)到(1700, 2700)的斜线 到 的斜线使用 Line 方法画矩形 方法画矩形 使用一个很简单的画矩形的方法.当在 Line 方法中的最后 一个很简单的画矩形的方法 . 当在 方法中的最后 添加“ 选项时 就会以指定的两点为矩形的对角点, 选项时, 添加“B“选项时,就会以指定的两点为矩形的对角点, 画一个矩形. 画一个矩形.如: Line (500, 500)(1500, 1000), vbRed, B Line (500, 500)Step(1000, 500), , B 或 注意:如果 c

29、olor 参数省略的话,则在“B“之前要有两 参数省略的话, 注意:如果 参数省略的话 则在“ 之前要有两 个逗点,参数值可以省略,但参数位置要保留. 个逗点,参数值可以省略,但参数位置要保留.填充矩形使用 Line 方法还可以指定对矩形进行填充,有 使用 Line 方法还可以指定对矩形进行填充 Line 方法还可以指定对矩形进行填充, 两种填充方式: 两种填充方式:1) 颜色填充 Line (500, 500)(1500, 1000), vbRed, BF 以上代码绘制一个红色的方块 2) 图案填充 FillStyle = 1 Line (500, 500)(1500, 1000), vbR

30、ed, B 需要先指定 FillStyle 属性 , 即矩形内部图案填充方 需要先指定 属性, 属性 式填充图案的选择FillStyle 属性的取值和填充效果 属性的取值和填充效果vbFSSolid:0,实线 : , vbFSTransparent(缺省值):1,透明 (缺省值) , vbHorizontalLine:2,水平直线 : , vbVerticalLine:3,垂直直线 : , vbUpwardDiagonal:4,上斜对角线 : , vbDownwardDiagonal:5,下斜对角线 : , vbCross:6,十字线 : , vbDiagonalCross:7,交叉对角线 :

31、 , 以上填充的图案以线条为主, 以上填充的图案以线条为主 , 那么如何指定线条的颜 色呢? 对象的 FillColor 属性充当此任 . 该属性缺省为 属性充当此任. 色呢 ? 对象的 属性充当此任 黑色,所以如果不更改的话,填充的将都是黑色线条. 黑色 , 所以如果不更改的话 , 填充的将都是黑色线条 .填充矩形示例【 例 】 编程在窗体中显示所有的填充图案,并使用不 编程在窗体中显示所有的填充图案, 同的填充颜色. 同的填充颜色.Sub Form_Click() Dim i As Integer For i = 0 To 7 Form1.FillStyle = i Form1.FillC

32、olor = QBColor(i) Line (i * 600, 500)-Step(600, 600), vbRed, B Next End Sub指定线型DrawWidth 设置为 时,DrawStyle 可以设置以下线型: 设置为 1时 可以设置以下线型: 设置为 可以设置以下线型 vbFSSolid(缺省值):0,实线 (缺省值) , vbDash:1,虚线 : , vbDot:2,点线 : , vbDashDot:3,点划线 vbDashDot:3, vbDashDotDot:4,双点划线 : , vbInvisible:5,无线 : , vbInsideSolid:6,内收实线 :

33、 ,指定线宽通过设置 DrawWidth 属性可以控制画出的线的宽度, 属性可以控制画出的线的宽度, 通过设置 属性可以控制画出的线的宽度 值越大,线越宽(整数值) 值越大,线越宽(整数值) 【 例 】 利用 Line 方法在窗口上随意画画 , 可以指定颜 利用 Line 方法在窗口上随意画画, Line 方法在窗口上随意画画 色和线宽. 色和线宽. 1. 鼠标按下并移动开始 划线, 划线,鼠标抬起的时 候不划, 候不划,需要响应鼠 标按下和移动两个事 件. 2. 颜色可以利用通用对 话框 CommonDialog 话框 控件来选择 线宽用滚动条设置. 3. 线宽用滚动条设置.绘图程序示例 设

34、置线宽 Private Sub HScroll1_Change() Form1.DrawWidth = HScroll1.Value End Sub 设置线条颜色 Private Sub cmdColor_Click() CommonDialog1.ShowColor Form1.ForeColor = CommonDialog1.Color End Sub 擦除窗体 Private Sub cmdClear_Click() Me.Cls End Sub绘图程序示例 鼠标按下后,设置绘图起始坐标 鼠标按下后, Private Sub Form_MouseDown(Button As Integ

35、er, Shift As Integer, X As Single, Y As Single) CurrentX = X CurrentY = Y End Sub 鼠标按下的同时并移动,绘制从(CurrentX,CurrentY)到(X,Y)的 鼠标按下的同时并移动,绘制从 到 的 线条 Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 1 Then Line -(X, Y) End Sub使用 Circle 方法画圆 方法画圆 使用Circ

36、le 方法用于画圆的语法是: 方法用于画圆的语法是: 方法用于画圆的语法是object.Circle Step(x, y), radius, color其中( )是圆心坐标, 指定半径长度, 其中(x, y)是圆心坐标,radius 指定半径长度, 指定半径长度 例如,下面语句将画出一个以(1000,1000)为圆心,500 为圆心, 例如,下面语句将画出一个以 为圆心 为半径的红色空心圆: 为半径的红色空心圆: Circle (1000, 1000), 500, vbRed 方法一样, 和 Line 方法一样,在设置了对象的 方法一样 在设置了对象的 FillStyle 和 FillColo

37、r 和 属性后, 方法就能画实心圆和其它填充效果的圆. 属性后,Circle 方法就能画实心圆和其它填充效果的圆. 方法就能画实心圆和其它填充效果的圆 例如画一个红色的实心圆: 例如画一个红色的实心圆: FillStyle = vbSolid FillColor = vbRed Circle (1000, 1000), 500, vbRed画圆示例【例】从窗口中心向外不停地画同心圆,直到充满. 从窗口中心向外不停地画同心圆,直到充满. Private Sub Timer1_Timer()Static Radius Dim CX, CY, Limit ScaleMode = vbPixels C

38、X = ScaleWidth / 2 CY = ScaleHeight / 2 Limit = IIf(CX CY, CY, CX) Circle (CX, CY), Radius, RGB(Rnd * 255, Rnd * 255, Rnd * 255) Radius = Radius + 1 If Radius Limit Then 如果改变线宽,怎么办? 如果改变线宽,怎么办? Form1.Cls Radius = 0 End If End SubCircle 方法画椭圆 方法画椭圆圆的纵横轴比例不等于 1,就是椭圆. 方法完整的语法是: 圆的纵横轴比例不等于 ,就是椭圆.Circle

39、方法完整的语法是: 方法完整的语法是 其中参数 start 和 end 是可选的 , 可用于画圆弧 , 画椭圆时省略 和 是可选的, 其中参数 是可选的 可用于画圆弧, 这两个参数,但是逗号是不能省的.如果画椭圆, 这两个参数,但是逗号是不能省的.如果画椭圆,最后一个参 是不能省略的, 数 aspect是不能省略的,所以更明确的椭圆的语法是: 是不能省略的 所以更明确的椭圆的语法是: aspect 参数 : 指定了椭圆的垂直直径和水平直径的比例. aspect 参数: 指定了椭圆的垂直直径和水平直径的比例 . 该参 参数 数是正浮点数. 参数小于 0 时 椭圆沿水平轴线拉长; 数是正浮点数.当

40、 aspect 参数小于 时,椭圆沿水平轴线拉长; 参数小于 相反 aspect 参数大于 时,则沿垂直轴线拉长. 参数大于1 时 则沿垂直轴线拉长. 相反 参数大于 Radius 参数:椭圆有两个半径 参数: 水平方向的 x 半径和垂直方向 参数 椭圆有两个半径水平方向的 半径和垂直方向 水平方向的 半径, 语句中只使用了一个参数 radius 对应椭圆 的 y 半径, 但在 半径 但在 Circle 语句中只使用了一个参数 语句中只使用了一个参数 对应椭圆 长轴.也就是说, 参数小于 1 的话 的 长轴 . 也就是说 , 当 aspect 参数小于 的话 ,radius 指的是水 参数小于

41、 的话, 指的是水 平方向的半径,如果 aspect 参数大于或等于 的话 , 则 radius 指 参数大于或等于 1 的话 平方向的半径 , 如果 参数大于或等于 的话, 指 的是垂直方向的半径. 的是垂直方向的半径.Circle Step(x, y), radius, color, start, end , aspectCircle Step(x, y), radius, color, , , aspect画椭圆示例在任意大小的窗口上画出最大的椭圆, 【例】在任意大小的窗口上画出最大的椭圆,并且椭圆随着窗 口变化而变化. 口变化而变化. Private Sub Form_Resize()

42、 Dim var1, var2 Form1.Cls ScaleMode = vbPixels var2 = ScaleHeight / ScaleWidth If var2 1 Then var1 = ScaleWidth / 2 - 1 Else var1 = ScaleHeight / 2 - 1 End If Circle (ScaleWidth / 2, ScaleHeight / 2), var1, vbRed, , , var2 End Sub Circle 方法画圆弧 方法画圆弧圆弧就是截取圆或椭圆中指定的一部分. 圆弧就是截取圆或椭圆中指定的一部分. Circle Step(x

43、, y), radius, color, start, end , aspect start 和 end 参数指定的就是圆或椭圆中的两个角度 , 参数指定的就是圆或椭圆中的两个角度, 和 参数指定的就是圆或椭圆中的两个角度 Circle 方法按照逆时针顺序画出这两个角度之间的弧线. 方法按照逆时针顺序画出这两个角度之间的弧线. 方法按照逆时针顺序画出这两个角度之间的弧线 圆的角度取值范围是-2 2 圆的角度取值范围是Circle (1000, 1000), 800, vbRed, 0, Pi / 2 Circle (3000, 1000), 800, vbRed, *Pi, 3 * Pi /

44、2 Circle (1000, 1000), 800, vbRed, -2 * Pi, - Pi / 2 Circle (3000, 1000), 800, vbRed, -Pi , -3 * Pi / 2使用 PaintPicture 方法显示图片 方法显示图片 使用PaintPicture 方法不仅可以显示图像,还可以完成各种图像效果, 方法不仅可以显示图像,还可以完成各种图像效果, 方法不仅可以显示图像包括缩放,滚动,全景,平铺以及多种颜色效果.实际上 PaintPicture 方法可以理解为从源控件到目标控件的图像的复制, 方法可以理解为从源控件到目标控件的图像的复制, 方法可以理解为

45、从源控件到目标控件的图像的复制 object.PaintPicture pic, destX, destY , destWidth , destHeight , srcX , srcY , srcWidth , srcHeight , Opcode Object:指的是目标控件, 可以是窗体, 图形框或 对象, : 指的是目标控件,可以是窗体,图形框或 Printer 对象, 对象 这些控件都是图片显示的容器. 这些控件都是图片显示的容器. pic 参数:一个 参数: 对象, 参数 一个Picture 对象,是要绘制到目标控件上的图形源, 对象 是要绘制到目标控件上的图形源, 它可以由窗体或

46、PictureBox 控件的 控件的Picture 属性指定. 属性指定. 它可以由窗体或 控件的 属性指定 destX 和 destY 参数:图像出现在目标控件中的坐标位置. 和 参数:图像出现在目标控件中的坐标位置. 参数 destWidth 和 destHeight参数: 可选 ,图像在目标控件中的大小. 参数: 和 参数 可选,图像在目标控件中的大小. srcX 和 srcY 参数:可选,源控件图像要复制的区域的起始坐标. 参数: 和 参数 可选,源控件图像要复制的区域的起始坐标. destWidth 和 destHeight 参数: 可选 ,图像复制区的宽度和高度. 参数: 和 参数

47、 可选,图像复制区的宽度和高度. Opcode 参数:可选,定义当在目标控件上绘图时,在图像上执 参数: 参数 可选,定义当在目标控件上绘图时, 行的位操作.如反转等. 行的位操作.如反转等. PaintPicture 方法示例 方法示例【例】以不同效果将图片显示在窗体上. 以不同效果将图片显示在窗体上.PaintPicture 方法示例 方法示例 整个图像以原始尺寸复制到窗体上 Private Sub Command1_Click() Cls PaintPicture Picture1.Picture, 0, 0 End Sub 复制原始图像的指定矩形区域到窗体上 Private Sub C

48、ommand3_Click() Cls PaintPicture Picture1.Picture, 0, 0, , , 1000, 1000, 500, 500 End SubPaintPicture 方法示例 方法示例 放大 倍显示整个图像 放大 1 倍显示整个图像 Private Sub Command2_Click() Cls PaintPicture Picture1.Picture, 0, 0, _ ScaleX(Picture1.Picture.Width, vbHimetric, vbTwips) * 2, _ ScaleY(Picture1.Picture.Height, vbHimetric, vbTwips) * 2 End Sub 整个图像以反转复制到窗体上 Private Sub Command4_Click() Cls PaintPicture Picture1.Picture, 0, 0, , , , , , , vbNotSrcCopy End Sub1

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

当前位置:首页 > 网络科技 > 图形图像

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报