第8章 Visual Basic开发多媒体应用系统 教学要求: 通过本章的学习,需要熟练掌握各个控件的使用方法,特别是MCI控件,而且可以自己独立设计一些独具特色的多媒体应用程序。 8.1 多媒体应用系统基础 8.2 简单的多媒体应用系统制作举例 8.3 小结
8.1 多媒体应用系统基础 8.1.1 多媒体的基本概念 多媒体技术是一种能够让用户以交互方式将文本、图像、图形、音频、动画、视频等多种信息,经过电脑内之软硬件设备获取、操作、编辑、存储等处理过程后,以单独或合成的形态表现出来的技术及方法。 1.声音媒体 (1) CD音频(CD Audio) (2) 波形音频 (3) MIDI 2. 视频媒体 (1) 图像 (2) 数字图像
3. 动画媒体 将渐变的图形文件进行连续播放,就形成了动画,同时还可以带有同步的音频信息。 4.多媒体技术的优点 (1)能生动地再现所要表现的主体的内容、特性,吸引用户的兴趣、说服力强 (2)交互性强 可根据用户的不同需求得到不同的回答,与用户进行交互和沟通。 (3)使用方使 用户可直观地根据各种提示和帮助轻而易举地使用多媒体系统,操作简便。
8.1.2 Multimedia MCI控件及其使用 Multimedia控件是Viusal Basic提供的用来管理多媒体控件接口MCI(Media Control Interface)设备上的多媒体文件的录制和回放的专用控件.
1. Multimedia MCI控件常用属性 (1) AutoEnabled属性 (2) Command属性 MMControl1.Command [= CmdString$] (3) DeviceType属性 MMControl1.DeviceType [= device$] (4) FileName属性 MMControl1.FileName = FileName$ (5) TimeFormat属性 该属性被用来设置报告所在位置信息的时间格式 (6) Mode 属性 Mode属性被用来MCI设备当前模式
(7) PlayEnabled类属性 用来决定Multimedia MCI控件的各按钮是否处于有效状态 (8) PlayVisible类属性 该属性决定Multimedia MCI控件Play按钮是否可见。 (9) Orientation属性 该属性用来决定控件中的按钮是水平排列还是垂直排列. (10) Error和ErrorMessage属性 Error属性被用来返回最后一条MCI命令返回的错误代码。 (11) Notify属性 该属性用于决定Multimedia MCI控件执行完下一条指令后,是否产生回调事件。 (12) Position属性
2. Multimedia MCI控件常用事件 (1) Done事件 Private Sub MMControl1_Done(NotifyCode As Integer) End Sub, (2) StatusUpdate事件 Status Update事件是按UpdateInterval属性所给定的时间间隔自动地发生, Private Sub MMControl1_StatusUpdate() End Sub
8.1.3 使用Win32 API播放音频 使用Win32 API播放音频主要通过调用MessageBeep、SndPlaySound和PlaySound函数来实现,它们都是高层音频接口。 1.MessageBeep函数 MessageBeep是标准的Win32 API函数,一般用于播放系统报警声音。 2.PlaySound函数 主要用于播放给定的音频文件、WAV资源与系统事件对应的声音。同样在使用前,需要在模块中声明 。
8.1.3 其它多媒体控件 1. ActiveMovie控件 ActiveMovie控件相对于MCI控件而言,不仅可以很容易的播放各种音频文件和视频文件,而且可以非常方便的通过控制面板对播放进行各种控制,包括调节音量的大小。
(1) AboutBox方法 AboutBox用于弹出一个对话框,在其中有控件的一些基本信息。 (2) AutoStart属性 AutoStart属性设定ActiveMovie控件能否自动播放ActiveMovie文件。 (3) FullScreenMode属性 FullScreenMode属性决定是否应用全屏方式来播放ActiveMovie文件 (4) MovieWidowSize属性 MovieWidowSize属性用来设定播放ActiveMovie文件的窗口尺寸大小
2. Animation控件 Animation控件用于显示无声的动画文件。相对于其他多媒体控件,Animation控件可以说是最简单的一种多媒体控件。Animation控件主要用来格放无声的AVI动画.这种格式的动画类似于电影,由一系列帧位图组成。
1.常用属性 (1) AutoPlay (2) Center 2.常用方法 Animation控件的常用方法包括:Open、Play、Stop、Close
3.应用程序举例 【例】 使用Animation控件创建一个应用程序用于播放.Avi动画,程序界面如图所示。在窗体中添加三个命令按钮:CmdPlay、CmdStop、CmdExit,分别设置其Caption为播放、停止、退出。 添加一个Animation控件: Animation1。还添加一 个公共对话框控件: CommonDialog1, 用于对播放文件的选择。
3. MCIWnd控件 (1) AutosizeMovie属性 (2) AutosizeWindows属性 (3) DefaultContextMenuEnabled (4) Filename:指定设备所要播放的文件; (5) Menu:显示/隐藏播放条上的控制菜单 (6) Playbar:显示/隐藏播放条; (7) Positionstring:返回打开的mci设备的当前位置; (8) Record:设置控制菜单的“保存”命令是否可用; (9) Repeat:设置播放时是否“自动重播”; (10)Speed:设置播放时的速率, (11)TooltipText:返回/设置当鼠标停留在画面时的文本; (12)Timefreq:指定时间周期; (13)Volume:设置MCI设置的声音大小,1000为正常值; (14)Zoom:设置画面的缩放率。
8.2.1 利用Multimedia MCI控件制作多媒体播放器 8.2 简单的多媒体应用系统制作举例 8.2.1 利用Multimedia MCI控件制作多媒体播放器 【例】 使用MCI控件创建应用程序用于播放WAV、CDA、AVI、DAT及MIDI格式的多媒体文件。窗体界面如图所示 在窗体上添加两个命令 按钮(CmdOpen、CmdClose) 用于文件的打开与关闭, 一个公用对话框 (CommonDialog1) 用于返回文件名
8.2.2 利用Multimedia MCI控件制作CD播放器 【例】这里使用Mutiimedia MCI控件单独制作一个CD播放器,要求使用一个滚动条,能动态的显示当前播放位置,也可以随意改变当前文件的播放位置。窗体界面如图所示。
8.2.3利用Win32 API函数播放MIDI文件 【例】 利用Win32 API函数,编写一个程序用于MIDI格式文件播放。窗体界面如图所示。
用示例来说明如何使用ActiveMovie控件来制作一个MP3播放器。具体制作步骤如下: 1. 首先,新建一个工程,修改From1的大小,将Form1的MaxButton属性改为False,设置Form1的Caption属性为“使用ActiveMovie控件制作MP3播放器” 2. 在Form1上增加一个ActiveMovie控件,设置其属性 3.向窗体中添加一个CommonDialog控件,将它的Filename属性和Filter属性都设置为“*.MP3”,这样可以使弹出的对话框中只有*.MP3格式的文件才可以被选择。 4. 在窗体重添加两个标签:label1、Label2,分别用于标识当前打开文件或当前播放文件信息,初始化设置其Caption属性都为空白。 5. 在窗体上增加四个Command控件,设置它们的Captiong属性分别为:打开、播放、暂停、停止。
8.3 小 结 本章介绍了多媒体程序设计的一般思想。事实上,在Visual Basic中实现多媒体并不复杂,本章重点介绍了MCI控件的属性事件和方法,并通过具体示例详细介绍了使用方法。同时也介绍了其它一些控件包括ActiveMovie控件、Animation控件以及MCIWnd控件。还介绍了使用Win API实现多媒体音频的播放。