Visual Basic多媒体程序设计_第1页
Visual Basic多媒体程序设计_第2页
Visual Basic多媒体程序设计_第3页
Visual Basic多媒体程序设计_第4页
Visual Basic多媒体程序设计_第5页
已阅读5页,还剩56页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第12章 Visual Basic多媒体程序设计第12章 Visual Basic多媒体程序设计本章重点多媒体工程的开发方法文本软件开发技术图形软件开发技术图像软件开发技术数字音频软件开发技术数字视频软件开发技术动画软件开发技术第12章 Visual Basic多媒体程序设计12.1 根本概念12.2 VB图形处置技术12.3 VB图像处置技术12.4 VB音频处置技术12.5 VB视频处置技术12.6 VB动画处置技术12.7 小结12.1 根本概念Visual Basic (简称VB)是Microsoft公司推出的基于Windows平台的程序开发工具,其程序设计风格与传统设计方法不同,它采

2、用面向对象和事件的程序设计方法,是一种采用事件驱动编写机制的言语。VB专业版中提供了MCI(Media Control Interface)的控件。利用VB,可以编程处置文本、图形、图像、音频、视频、动画等多媒体数据,以设计或构造适宜不同需求的多媒体运用系统。在多媒体程序设计方面,VB不但本身提供了控制对象及多媒体控件,还提供了对众多第三方多媒体控件的支持及API函数的调用。12.1 根本概念VB涉及三个重要概念: (1)窗口。窗口是一种有边境的矩形区域,例如,资源管理器窗口、Word的文档窗口、对话框窗口、按钮、图标、菜单条等。 (2)事件。事件是经过鼠标、按键的操作、程序的控制或其他窗口所

3、产生的操作或行为。 (3)音讯。发惹事件时就引发一条音讯并发送到操作系统。 VB采用事件驱动模型。在事件驱动模型中,程序代码不是按照预定的顺序执行,而是在呼应不同的事件时执行不同的代码片断。Windows操作系统经过给每一个窗口提供一个独一的标识符(窗口句柄Hwnd)来管理一切的窗口。操作系统延续地监视每一个窗口的活动或事件信号。当发惹事件时,将引发一条音讯,操作系统处置该音讯并广播给其他窗口。最后,每一个窗口根据本身处置该条音讯的指令而采取适当的操作。12.2 VB图形处置技术12.2.1 VB坐标系统及图形格式12.2.2 PaintPicture方法和BitBlt API函数12.2.3

4、 绘图方法程序实例12.2.1 VB坐标系统及图形格式在VB中,坐标系统是一个二维网格,可定义屏幕上、窗体中或其他容器中的位置。运用窗体中的坐标(x,y),可定义网格上的位置。其中x值是沿x轴的位置,最左端的值是0;y值是沿y轴的位置,最上端的值是0。VB可以支持的图形格式有位图(.bmp)文件、设备独立位图(.dib)文件、图标(.ico)文件、光标(.cur)文件、元(.wmf)文件、加强的元文件(.emf)、GIF(.gif)文件以及JPEG(.jpg)文件.12.2.2 PaintPicture方法和BitBlt API函数PaintPicture的根本功能是图像块传输。它能快速地将两

5、幅位图进展合并;能将位图的全部或某一部分快速剪切并粘贴到其他地方;能将位图自动延伸或紧缩以顺应新的环境;能在屏幕上不同位置之间、屏幕与内存之间传送位图;它采用32位三元光栅操作代码(RasterOp),在源位图、选定的子位图和目的位图之间进展颜色组合,生成目的位图中的最终颜色;它将13个常用RasterOp操作以内部常量方式给出,不需任何声明。12.2.2 PaintPicture方法和BitBlt API函数PaintPicture方法作用:在Form、PictureBox或Printer上绘制图形文件(.bmp、.wmf、.emf、.cur、.ico或.dib)的内容。语法:Object.

6、PaintPicturepicture,x1,y1,widthl,height1,x2,y2,width2,height2,opcode。Object是可选项。其值可以为窗体、PictureBox控件或Printer。Picture为必选项,指定要绘制到Object上的图形源。x1,y1必选项,均为单精度值,指定在Object上绘制Picture的目的坐标。Width1可选项,单精度值,指示Picture的目的宽度。Height1可选项,单精度值,指示Picture的目的高度。x2,y2可选项,均为单精度值,指示Picture内剪贴区的坐标(x-轴和y-轴)。Width2可选项,单精度值,指示

7、Picture内剪贴区的源宽度。Height2可选项,单精度值,指示Picture内剪贴区的源高度。opcode可选项,是长型值或仅由位图运用的代码,该参数与BitBlt中dwRop参数含义一样。表示源位图与目的位图的组合关系,用来定义在将Picture绘制到Object上时对Picture执行的位操作。12.2.2 PaintPicture方法和BitBlt API函数BitBlt API函数作用:与PaintPicture方法一样。函数声明: Declare Function BitBlt Lib gdi32 Alias BitBlt (ByVal hDestDC As Long,ByVa

8、l x As Long,ByVal y As Long,ByVal nW记th As Long,ByVal nHeight As Long,ByVal hSrcDC As Long,ByVal xSrc As Long,ByVal ySrc As Long,ByVal dwRop As Long)As Long12.2.2 PaintPicture方法和BitBlt API函数参数阐明:hDestDC:目的设备环境x:目的左上角坐标y:目的顶端坐标nWidth:目的宽nHeight:目的高hSrcDC:源设备环境xSrc:源左上角坐标ySrc:源顶端坐标 dwRop:位处置操作,与PaintP

9、icture方法一样。12.2.3 绘图方法程序实例下面引见的“真彩色画板可以在一个画图区域内,以恣意的颜色,绘制任何曲线。程序中用Line绘图方法与鼠标的MouseDown及MouseMove事件,并运用RGB(Red,Green,Blue)函数选取画笔颜色,实现详细的绘图操作。(1)各对象属性设置如下: Begin VB.Form Form1 BackColor=&H80000001& Caption=简单的真彩色画板 ClientHeight=7425 ClientLeft=1665 ClientTop=1950 ClientWidth=996012.2.3 绘图方法程序实例Begin

10、VB.PictureBox Picture2Appearance=0 FlatBackColor=&H80000005&ForeColor=&H80000008&Height=1785Left=8130Picture=Form1.frx:0000ScaleHeight=1755ScaleWidth=1755TabIndex=15Top=300Width=1785End12.2.3 绘图方法程序实例Begin VB.HScrollBar HScroll3Height=375Left=8250Max=255TabIndex=7Top=5820Width=1575EndBegin VB.HScrol

11、lBar HScroll2Height=375Left=8250Max=255TabIndex=6Top=5100Width=1575 End12.2.3 绘图方法程序实例Begin VB.HScrollBar HScroll1Height=375Left=8250Max=255TabIndex=5Top=4380Width=1575EndBegin VBmandButton Command4Caption=退 出BeginProperty Font Name=宋体 Size=1212.2.3 绘图方法程序实例Charset=134 Weight=400Underline=0 FalseIta

12、lic=0 FalseStrikethrough=0 FalseEndPropertyHeight=495Left=6210TabIndex=4Top=6780Width=1455EndBegin VBmandButton Command3Caption=清 屏BeginProperty FontName=宋体Size=12Charset=134Weight=400Underline=0 FalseItalic=0 FalseStrikethrough=0 FalseEndProperty12.2.3 绘图方法程序实例12.2.3 绘图方法程序实例Charset=134Weight=400Un

13、derline=0 FalseItalic=0 FalseStrikethrough=0 FalseEndPropertyHeight=495Left=2130TabIndex=2Top=6780Width=1455End12.2.3 绘图方法程序实例Begin VB.PictureBox Picture1AutoRedraw=-1 TrueBackColor=&H80000009&Height=6015Left=330ScaleHeight=5955ScaleWidth=7035TabIndex=0Top=300Width=7095End12.2.3 绘图方法程序实例Size=12Chats

14、et=134Weight=400Underline=0 FalseItalic=0 FalseStrikethrough=0 FalseEndPropertyHeight=495Left=90TabIndex=1Top=6780Width=1455End12.2.3 绘图方法程序实例程序代码如下在窗体Forml的声明段声明以下变量 Dim paintnow As Boolean Dim startX As Single,startY As Single Dim red As Integer,green As Integer,blue As Integer Private Sub Command

15、1_Click() 变量file_name用于保管用户输入的要翻开的文件的文件名 Dim file_name As String file_name=InputBox(请输入途径文件名:,翻开文件) 假设文件不存在,那么显示文件未找到的对话框,否那么将指定的图形文件载入赋给图片框的Picture属性(即在图片框中显示翻开的图形文件),并设置保管命令按钮获得焦点12.3 VB图像处置技术12.3.1 在图片上平滑挪动文字12.3.2 图像的滚动显示和缩放12.3.3 屏幕图像的捕捉12.3.1 在图片上平滑挪动文字在很多电影及游戏的结尾,我们可以看到文本在图片上平滑地卷到屏幕的上方,在VB中,可

16、以运用以下方法实现此“特技:新建工程文件,并创建Forml。在Forml上放置PictureBox控件Picture1,选定背景图片。另外,放置一个Timer控件Timer1,设置Enabled属性为True,设置Interval为100(Interval决议文本挪动速度)。单击选择Picture1,在PictureBox的底部放置Label控件Label1,并设置Label1的BackStyle属性为0(透明即控件后的背风光和任何图片都是可见的),设置Caption为待挪动的字符串12.3.2 图像的滚动显示和缩放12.3.2 图像的滚动显示和缩放12.3.3 屏幕图像的捕捉12.3.3 屏

17、幕图像的捕捉12.3.3 屏幕图像的捕捉12.4 VB音频处置技术12.4.1 利用Beep语句使扬声器发声12.4.2 利用OLE2.0控件播放音频12.4.3 利用MCI32控件播放音频及MIDI音乐12.4.4 调用API函数播放音频12.4.5 MP3的播放方法12.4.1 利用Beep语句使扬声器发声12.4.1 利用Beep语句使扬声器发声12.4.2 利用OLE2.0控件播放音频12.4.3 利用MCI32控件播放音频及MIDI音乐12.4.3 利用MCI32控件播放音频及MIDI音乐12.4.4 调用API函数播放音频12.4.4 调用API函数播放音频12.4.5 MP3的播

18、放方法12.4.5 MP3的播放方法12.5 VB视频处置技术12.5.1 利用Animation控件播放AVI文件12.5.2 利用API函数MciSendString()播放AVI文件12.5.3 利用API函数MciExecute()播放AVI文件12.5.4 利用MMControl控件播放AVI文件12.5.5 利用可插入对象中的电影剪辑控件播放AVl文件12.5.6 利用OLE控件播放AVI文件12.5.1 利用Animation控件播放AVI文件12.5.2 利用API函数MciSendString()播放AVI文件12.5.2 利用API函数MciSendString()播放AVI

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论