图形控件与图形方法

上传人:j****9 文档编号:54127008 上传时间:2018-09-08 格式:PPT 页数:47 大小:1.14MB
返回 下载 相关 举报
图形控件与图形方法_第1页
第1页 / 共47页
图形控件与图形方法_第2页
第2页 / 共47页
图形控件与图形方法_第3页
第3页 / 共47页
图形控件与图形方法_第4页
第4页 / 共47页
图形控件与图形方法_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《图形控件与图形方法》由会员分享,可在线阅读,更多相关《图形控件与图形方法(47页珍藏版)》请在金锄头文库上搜索。

1、第10章 图形控件与图形方法主讲教师:夏其表,第10章 图形操作与 图形控件,10.1 坐标系统 10.2 图形控件 10.3 绘制图形的方法 10.4 综合举例,本章重点和难点,重点:绘制图形的方法、图形控件 难点:坐标系统,10.1 坐标系统,在Visual Basic中,通常以left、top和Width、Height四 个参数来衡量控件在容器中的位置和大小。,坐标系统的三要素,原点 刻度 方向和大小,默认情况下,窗体的坐标原点在左上角顶点处,窗体的坐标方向为向右 和向下,坐标刻度为缇(twip)。,(一)默认坐标系统,width,height,(left,top),在Visual Ba

2、sic中,每个容器都有一个自身的坐标系统,坐标系中的X轴向右、Y轴向下延伸,如上图所示为缺省的窗体坐标系统、图片控件的坐标系统。,(二)容器自定义坐标系统,(1) ScaleLeft属性 (2) ScaleTop属性 (3) ScaleWidth属性 (4) ScaleHeight属性 (5) CurrentX、CurrentY属性,容器(窗体、图片框)的坐标属性,Form1.ScaleLeft = -100 Form1.ScaleTop = 150 Form1.ScaleWidth = 200 Form1.ScaleHeight = -300,用Scaleleft、Scaletop、Scal

3、ewidth、Scaleheight属性设置自定义坐标系统,(三)改变容器坐标系的Scale方法,利用Scale方法可以改变原点的坐标并随之改变最大坐标值,容器的左上角坐标为(x1,y1),右下角坐标为(x2,y2) 将容器在X轴方向分为x2-x1等份、Y轴方向分为y2-y1等份,综合例题:单击“坐标系”按纽(commnand1),把图片框的坐标系统设置在中央,并画出该坐标系统的示意图。,界面设计如下:,(0,0),代码设计 Private Sub Command1_Click()Picture1.Scale (-Picture1.ScaleWidth / 2, -Picture1.Scale

4、Height / 2) _(Picture1.ScaleWidth / 2, Picture1.ScaleHeight / 2)Picture1.Line (-Picture1.ScaleWidth / 2, 0) - (Picture1.ScaleWidth / 2, 0)Picture1.Line (0, -Picture1.ScaleHeight / 2) - (0, Picture1.ScaleHeight / 2) End Sub,思考:有否有更简单的方法进行设置?,Private Sub Command1_Click()Picture1.Scale (-10, 10)-(10, -

5、10)Picture1.Line (-10, 0)-(10, 0)Picture1.Line (0, 10)-(0, -10) End Sub,给图片框自定义大小和方向,(-10,10),(10,-10),(0,0),(四) 坐标刻度,默认刻度: 缇通过设置容器的ScaleMode属性可以选择改变坐标系统的单位。 设置容器的ScaleMode属性ScaleMode属性为 1: 缇ScaleMode属性值为2: 磅ScaleMode属性值为3: 像素ScaleMode属性值为4: 字符 ScaleMode属性值为5: 英寸ScaleMode属性值为6: 毫米ScaleMode属性值为7: 厘米,

6、1缇0.01764毫米0.05磅 1440缇=1英寸 72磅=1英寸,自定义刻度 将ScaleMode值设置为0,则采用自定义刻度。 用Scale方法设置坐标系后,ScaleMode值自动变为0。反之,ScaleLeft、ScaleTop、ScaleHeight、ScaleWidth属性被改变,ScaleMode值自动变为0,单位长度根据变化后的上述属性重新确定。,10.2 图形控件,图片框控件(Picture1) 影像框控件(Image1) 直线控件(Line1) 形状控件(Shape1),图片框控件( picture1 ),工具箱中图片框控件的图标为 。图片框控件名称的缺省值为:Pictu

7、re1、Picture2、图片框控件用以显示图片,也可以作为其他对象的容器、显示图形方法的输出结果和Print方法输出的文本。,图片框控件( picture1 ),(一)图片框的常用属性 Picture 属性(字符串类型)图片框控件的Picture属性返回或设置图片框中的图片。在图片框中加载图像有下列两种方式: 在属性窗口中设置 界面设计时,在该图片框控件属性窗口中点击“Picture”属性,选择所 需要加载的图片。 在代码窗口中设置 格式:图片框控件名.Picture = LoadPicture(filename$),图片框控件( picture1 ),(一)图片框的常用属性2. AutoS

8、ize属性(逻辑型) AutoSize属性值为True时,图片框的边界会随着所装入 图片的大小变化而变化。AutoSize属性值为False时,图片框显示不下的图片将被 截去。,图片框控件( picture1 ),(二)图片框的常用方法Print方法:打印输出 Cls方法:擦除 图形方法(Pset、Point、Line、Circle等),图片框控件( picture1 ),(三)图片框的常用事件 图片框的主要事件有:Click、MouseDown、MouseUp、MouseMove等。 例如:MouseDown事件(效果图),Private Sub Picture1_MouseDown(But

9、ton As Integer, Shift _ As Integer, X As Single, Y As Single)Picture1.ClsPicture1.CurrentXX Picture1.CurrentY=YPicture1.Print “你好!” End Sub,影像框控件(Image1),工具箱中影像框控件的图标为 。 影像框控件名称的缺省值为:Image1、Image2、 影像框控件只能用于显示图像,不支持图形方法,也不能当作容器来使用。,影像框控件(Image1),(一)影像框控件的常用属性 Picture 属性(字符串类型)与图片框控件的Picture属性一样,可以在设

10、计时设置,也可在程序运行时用LoadPicture函数装入。 影像框控件名.Picture = LoadPicture(filename$) Stretch属性(逻辑类型)当Stretch为True时,根据影像框的大小自动调整图片的大小,当Stretch为False时,影像框调整大小来适应图片的大小。,影像框控件(Image1),(二)影像框控件的常用事件影像框控件与图片框控件可以响应的事件过程大体相同,如Change、Click、MouseDown、MouseUp、MouseMove等常用事件。,思考:图片框控件和影像框控件有何区别?,1、图片框是容器,而影像框不是。,2、加载速度影像框比较

11、快。,3、调整图片大小的属性不同。,图片框:AutoSize 影像框:Stretch,直线控件( Line1),工具箱中直线控件的图标为 。直线控件缺省的控件名称为:Line1、Line2、属性:1、起点和终点的位置属性x1 y1 和 x2 y22、BoderStyle属性,形状控件 (Shape1),工具箱中形状控件的图标为 。形状控件缺省的控件名称为:Shape1、Shape2、,形状控件 (Shape1),(一)形状控件的常用属性: Shape属性(整数05) BoderStyle属性(整数06) (3)BorderColor:设置边框颜色。 (4) BorderWidth:设置边框宽度

12、。 (5)backcolor (6)backstyle (7)fillcolor (8)FillStyle属性(整数07) 例如:Shape1.fillstyle=0 设置填充色Shape1.fillcolor=rgb(255,0,0),形状控件 (Shape1),(二)综合举例(效果图),10.3 图形方法,颜色设置 画点方法Pset 颜色取样函数Point 画直线、矩形方法Line 画圆、圆弧、扇形、椭圆方法CirCle,(一)颜色设置,(1) RGB函数 格式:RGB(Red,Green,Blue)其中Red、Green、Blue取值范围都是0到255。 (2) QBColor函数格式:

13、 QBColor(color)其中color参数的取值为0-15范围内的整数。 (3) 使用预定义常量例:Form1.ForeColor=vbRed (4) 直接赋值 例: Form1.ForeColor &HFF& 设置为红色,(二)画点方法PSet,格式:容器.Pset step(x,y),color 该方法在容器上(x,y)处以值为color的颜色画点;缺省容器则指当前窗体,缺省color则为容器前景色(ForeColor)。 该方法所画点的大小,取决于容器的DrawWidth属性值。DrawWidth用来设置绘图线的宽度。 举例:用Pset方法在窗体上画五彩碎纸五彩碎纸效果图,(三)颜

14、色取样函数Point,格式:Point(x,y) 该函数的返回值为点(x,y)的颜色值。 举例:图片复制,效果图,Private Sub Command1_Click()Dim x As SingleDim y As SingleDim bc As LongDim i As IntegerDim j As IntegerFor i = 1 To Picture1.ScaleWidthFor j = 1 To Picture1.ScaleHeightbc = Picture1.Point(i, j)x = Picture2.ScaleWidth / Picture1.ScaleWidth * i

15、y = Picture2.ScaleHeight / Picture1.ScaleHeight * jPicture2.PSet (x, y), bcNext jNext i End Sub,(四)画线、矩形方法Line,1画线方法Line 格式:容器名.Line (x1,y1)-step (x2,y2),Color Color:表示线段的颜色,可以省略,省略时线段的颜色为容器的前景色,即Forecolor颜色。 x1,y1:表示线段的起点坐标,可省略,省略时表示直线从当前打印坐标开始。 x2,y2:表示线段的终点坐标 。 Step参数:加上Step参数,表示所绘制直线的两个端点位置为(x1,

16、y1)和(x1+x2,y1+y2)。,思考: 1、在图片框上绘制直线时,能否省略对象名?2、在画直线时,若省略起始点坐标,则直线将如何画出?,不能省略图片框的对象名。因为系统默认的对象名为窗体。,将从上一条直线的终点处开始画。 若画第一条直线时就省略起始点,则直线从左上角顶点处开始画。,多点折线情况:例如:下列语句在窗体上所绘折线如下图所示。,Line (50,100)-(100,100) Line -(150,150) Line - (100,200) Line -(50,200),RGB Line -(0,150),RGB Line -(50,100),画线方法Line,(四)画线、矩形方法Line,2. 画 矩形Line方法 格式:容器名.Line (x1,y1)-Step(x2,y2), Color ,B,F B:表示将两个坐标点作为一对对角顶点画出矩形。 F:可选,只有B出现后才能出现。有B没有F:矩形用当前的fillcolor和fillstyle填充。有B也有F:矩形用边框的颜色填充。 注意:各参数可根据实际要求进行取舍,但如果舍去的是中间参数,参数的位置分隔符不能舍去。,

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 生活休闲 > 科普知识

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