VB图形操作.ppt

上传人:本田雅阁 文档编号:2895077 上传时间:2019-06-02 格式:PPT 页数:22 大小:479.52KB
返回 下载 相关 举报
VB图形操作.ppt_第1页
第1页 / 共22页
VB图形操作.ppt_第2页
第2页 / 共22页
VB图形操作.ppt_第3页
第3页 / 共22页
VB图形操作.ppt_第4页
第4页 / 共22页
VB图形操作.ppt_第5页
第5页 / 共22页
点击查看更多>>
资源描述

《VB图形操作.ppt》由会员分享,可在线阅读,更多相关《VB图形操作.ppt(22页珍藏版)》请在三一文库上搜索。

1、第十章 图 形 操 作 (3学时),10.1 图形操作基础 10.2 绘图属性 10.3 图形控件 10.4 图形方法 *10.5 应用,10.1 图形操作基础,10.1.1 坐标系统 每个容器都有一个坐标系,构成一个坐标系,需要三个要素:坐标原点、坐标度量单位、坐标轴的长度与方向。坐标度量单位由容器对象的ScaleMode属性决定。缺省时为Twip。每英寸1440个Twip,20个Twip为一磅。,原点,Height,ScaleHeight,10.1.2 自行定义坐标系 方法一:通过ScaleTop,ScaleLeft,ScaleWidth和ScaleHeight属性实现。,(ScaleTo

2、p,ScaleLeft),例10.1 在Form_Paint 事件中定义窗体的坐标系。,方法二:采用Scale方法来设置坐标系: 对象.Scale (xLeft,yTop)(xRight,yBotton),例如,Form1.Scale (-200,250) - (300, -150)将建立和例10.1一样的坐标系。 可在程序中使用Scale方法改变坐标系统。当Scale方法不带参数时,取消用户定义的坐标系,采用缺省坐标系。 改变坐标系后产生的影响:,例10.1a Line (0, 0) - (1000, 1000)在不同坐标系的效果 例10.1b 控件对象在坐标系内与X轴和Y轴的位置保持相对不

3、变,利用图形层的特点,实现悬浮效果。,在命令按钮后放置一个表面色彩为黑色的标签即。,同一图形层内控件对象排列顺序称为Z序列。 Zorder方法的语法为: 对象.Zorder position position =0 表示该控件被定位于Z序列的前面 position = 1表示该控件被定位于Z序列的后面,例 Zorder方法的使用。,10.1.3 图形层,10.2 绘图属性,10.2.1 当前坐标 CurrentX,CurrentY属性给出窗体或图形框或打印机在绘图时的当前坐标。 这两个属性在设计阶段不能使用。,例10.2 利用CurrentX,CurrentY属性在窗体上输出立体字效果。,10

4、.2.2 线宽与线型 窗体、图形框或打印机的DrawWidth属性给出这些对象上所画线的宽度或点的大小。DrawWidth属性以像素为单位来度量,最小值为1。 例10.3 用DrawWidth属性改变直线宽度。,窗体或图形框或打印机的DrawStyle属性给出这些对象上所画线的形状。,10.2.3 填充与色彩,Visual Basic 默认采用对象的前景色(ForeColor属性)绘图,也可以通过以下颜色函数指定色彩。 1. RGB(红,绿,蓝)函数 红、绿、蓝三基色使用0255之间的整数。 2. QBColor(颜色码) 颜色码使用015之间的整数,10.3 图形控件,10.3.1 Pict

5、ure Box(图形框),主要作用:显示图片、也可作为其他控件的容器。 装入图形:图形框对象.Picture = LoadPicture(“图形文件名”) 删除图形:图形框对象.Picture = LoadPicture( ) Autosize属性设置为True时,图形框能自动调整大小与显示的图片匹配,例10.4 颜色的渐变过程。,10.3.2 Image(图像框),图像框比图形框占用更少的内存快。图像框内不能保存其他控件。 Stretch属性=False,图像框可自动改变大小以适应其中的图形。 Stretch属性=True, 图形可自动调整尺寸以适应图像框的大小。 例10.5 图形框Auto

6、size属性与图像框的Stretch属性对加载图形的影响。 SavePicture对象名.属性,文件名 把绘制或装在窗体、图形框和图像框内的图形保存到Bmp格式文件内。 10.3.3 Line(画线工具) 10.3.4 Shape(形状),例10.6,例10.7,10.4 图形方法,10.4.1 Line方法 画直线或矩形: 对象. Line Step (x1,y1)(x2,y2),颜色,BF 其中:对象可以是窗体或图形框。 (x1,y1) ,(x2,y2)为线段的起终点坐标或矩形的左上角右下坐标。 关键字B表示画矩形,关键字F表示用画矩形的颜色来填充矩形。 例10.8 用Line方法在一个窗

7、体上画坐标轴与坐标刻度。 例10.9 用Line方法在一个窗体上画随机射线。 10.4.2 Circle方法 Circle方法用于画圆、椭圆、圆弧和扇形。,10.4.3 Pset方法,Pset方法用于画点: 对象. Pset Step (x,y) ,颜色 参数(x,y)为所画点的坐标,关键字Step表示采用当前作图位置的相对值 。 例10.10 本例用Pset方法绘制阿基米德螺线 10.4.4 Point方法 Point方法用于返回指定点的RGB颜色,其语法格式如下: 对象. Point (x,y) 其中参数对象与(x,y)的意义与前述相同。 例10.11 用Point方法获取一个区域的信息。

8、 利用例10 .11的处理方法可使图片产生朦胧的效果。,10.5 应用,10.5.1 几何图形绘制 利用Line方法和Circle方法及DrawWidth、DrawStyle和DrawMode属性。 例10.12 用Circle方法在窗体上绘制由圆环构成的艺术图案。 算法:等分半径为r的圆周为n份,以等分点为圆心,半径r1绘制n个圆。 例10.13 为了能绘制任意区间a,b上函数f(x) 积分面积图,可在窗体上放置一个图形框和两个文本框。文本框用于指定积分上下限的值,图形框用于绘图。根据区间a,b的值设置图形框的左上角坐标为(a-1,bb+1),右下角坐标为(b+1,-1)。将区间a,b等分为

9、n 份,在每一等分点i上,用Line方法连线到(i,i*i)。,10.5.2 简单动画设计 动画:有计划地移动一个对象包括改变对象的形状和尺寸。 编程时可以采用帧动画原理,即通过一系列静态图辅之以连续快速变化产生动画效果,也可以通过Move方法改变图形对象的Top及Left属性来移动图形。动画的速度使用时钟控制。 例10.14 通过改变图形形状演示一个陀螺在图形框内转动。 例10.15 演示地球图标的转动,在转动时同时使地球图标在窗体内移动,并变化地球图标的尺寸。 (用PictureClip控件来存放一组图片) 10.5.3 图形漫游 滚动图形通过滚动条的滑块移动,只要设置图形框的Left或T

10、op为滑块当前值的负数,就可形成图形相对移动。 例10.16 本例在窗体内显示一幅地图,移动滚动条漫游地图。,10.5.4 图形处理技术 1. 操作象素 通过PaintPicture方法访问内置在操作系统中的BitBlt服务程序。 dpic.PaintPicture spic,dx,dy,dw,dh,sx,sy,sw,sh,rop 其中: 参数dpic为目标图形对象,spic为传送源, dx,dy是传送目标矩形区域左上角坐标(目标控件内任一位置)。 dw,dh是目标形矩形区域的宽和高。 sx,sy是要传送图形矩形区域左上角坐标。 sw,sh是要传送图形矩形区域的大小。 rop指定传送的象素与目

11、标中现有的象素组合模式(如表所示)。,传送源,目标,PaintPicture方法,dpic.PaintPicture spic,dx,dy,dw,dh,sx,sy,sw,sh,rop dw,dh sw,sh至少8个Twip,sh,复制图形:设置目标区域左上角坐标和大小与源矩形区域相同。 翻转图形:只需改变坐标系,设置图形宽为负数,则水平翻转图形;图形高度为负数,则上下翻转图形;如果宽度和高度都为负数,则两个方向翻转图形。 放大图形:改变目标图形的宽度和高度。 旋转图形:要需要对原始图片按行和列的顺序或按列和行的顺序扫描象素点,然后在目标图形区颠倒行和列的顺序复制象素点。 例10.17 Pain

12、tPicture方法翻转放大位图。 例10.17a 本例使用PaintPicture方法实现百叶窗效果。 2 使用DrawMode属性绘制图形 DrawMode属性可以将新象素与原有象素用不同的方法组合。两次Xor运算恢复原有象素。 例10.18 用鼠标选定图形中的区域复制到指定的图片框。 例10.18a 在Xor运算符下图形叠加的效果。,10.5.5 改变窗体对象外观 通过调用Windows的API函数可改变窗体的外观形状。VB应用程序要访问API函数,必须在VB应用程序中用Declare语句将API函数声明为外部过程。,将API函数声明为外部过程,操作流程如下:,API文本浏览器应用程序,

13、文件/加载文本文件,1。选择信息类型,2。选定,3。,4。送剪贴板,选定API函数复制到剪贴板,例10.19 建立一个椭圆形状的窗体。 API函数CreateEllipticRgn建立椭圆外形区域,SetWindowRgn显示该区域。,SetWindowRgn函数参数说明: hWnd窗口句柄,hRgn为窗口形状,bRedraw图形重绘控制,为一逻辑值。 句柄(Handle)可看作一个对象的指针,通过它可访问该对象。可通过API函数或对象的属性返回句柄。 使用API的区域设置函数不仅可以改变窗体外观,也可以改变控件外观。,CreateEllipticRgn函数参数说明:,坐标参数采用象数值。实际显示的窗体区域由窗体的Height、Width属性确定。需要使用ScaleX和ScaleY方法对窗体的度量单位进行转换。,(x1,y1),(x2,y2),10.5.6 在程序中加入后台音乐 API函数sndPlaySound可以直接播放音频文件或系统声音。sndPlaySound函数有两个参数,lpszSoundName指定播放的音频文件或系统声音,uFlags设定播放状态。,例10.20 本例示范用sndPlaySound函数播放音频文件。 调用形式:k = sndPlaySound(音频文件名,播放方式) 播放文件为空,就可停止音乐播放 注:本例要求有多媒体设备,

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

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1