当前课程知识点:VC++面向对象与可视化程序设计(下):MFC编程基础 >  第10章 多媒体应用程序的设计 >  10-1 利用音频函数实现多媒体程序设计 >  10-1-2

返回《VC++面向对象与可视化程序设计(下):MFC编程基础》慕课在线视频课程列表

10-1-2在线视频

10-1-2

下一节:10-1-3

返回《VC++面向对象与可视化程序设计(下):MFC编程基础》慕课在线视频列表

10-1-2课程教案、知识点、字幕

我们下面介绍几个常用的音频函数

第一个是MessageBeep()函数

它是用来播放系统提示音

第二个是sndPlaySound()

用来播放wav音频

这是我们在10_1这个例子里面大家已经了解到的

第三个是PlaySound()函数

它是用来播放来自资源中的声音

那实际上

这三个函数

它的功能的包含关系是这样的

PlaySound功能最广

MessageBeep功能最弱

所以PlaySound包含了sndPlaySound跟MessageBeep的播放功能

sndPlaySound是包含了MessageBeep的播放功能

所以它们功能的包含关系

大家通过这个图大家就可以了解到

首先我们介绍MessageBeep这个函数

这个函数是VC++中最简单的音频函数

它的功能也就最少

这个函数的原型是这样的

这个MessageBeep它只有一个参数

如果这个参数是ICONINFORMATION

那是出现信息消息框时对应的声音

比如说ICONWARNING,是出现警告消息框时对应的声音

比如说ICONHAND、ICONSTOP、ICONERROR

这是出现错误消息框时出现的声音

那么这里面出现信息消息框是对应的声音

有ICONINFORMATION或者ICONASTERISK

那么遇到这两个参数的时候发出的是同一个声音

那么这里面ICONHAND、ICONSTOP、ICONERROR这三个参数的时候

都是一个错误提示框时对应的声音

比如说这个是ICONQUESTION

是出现询问消息框时对应的声音

MB_OK是系统默认的声音

所以这几个参数大家试一下

看看它都发出什么声音

然后把这些参数分别放到MessageBeep函数参数里头就可以了

我们再介绍sndPlaySound函数

这个函数可通过指定文件名

或者指定在注册表中注册了的条目来播放wav音频

这个函数的原型是这样的

第一个参数通过10_1的例子大家已经知道了

它是要播放的文件的文件名

包含它的路径

第二个参数有这些选项

比如说SND_ASYNC

那么这是采用异步播放的方式播放声音

在声音播放后函数立即返回

如果要终止时通过再次调用这个函数

在第一个参数处写入文件名

第二个参数为空

如果把第一个参数写为SystemStart

那么就是开机时的那个声音

第二个参数如果写为“NULL”

那么大家可以看一下

这个它的运行效果是什么

我们也可以回过头来我们试一下刚才的例子

我把这个地方写为NULL

那么大家看一下

好了!它播放完了自己就停止了

如果要终止时再次调用这个函数

那么我们第二个参数,给它写空(NULL)

我们看这个参数SND_LOOP

这是循环播放声音

必须与第一个参数同时使用

停止的方法跟上面的方法是一样的

第三个参数是MEMORY

它说明第一个参数指定的wav声音在内存的映像中

第四个参数就是NODEFAULT

NODEFAULT就是没有缺省

没有缺省是什么意思呢?

当无法正常播放声音的时候

不播放系统默认声音

如果有声音正在播放

那这个函数立即返回FALSE值

终止运行

SND_SYNC是采取同步播放的方式播放声音

只有在声音播放完之后函数才返回

那么关于同步播放和异步播放的问题

我想如果大家学习过多媒体技术这门课

大家就知道这个概念了

下面再介绍PlaySound这个函数

这个函数的原型是这样的

它有三个参数

第一个参数是指定播放的声音

它可以是文件名

注册的条目

或者是资源标识

播放声音的来源通过第一个参数来确定

如果没有指定

那么就首先在注册表中寻找

如果没有找到

则认为指定的是一个文件名

如果把这个参数赋空

那么停止任何当前正在播放的wav声音

如果想要停止非wav的文件

那么在第三个参数当中要加入这个参数

这是关于第一个参数的情况

第二个参数是包含被加载资源文件的一个句柄

当第三个参数里面没有SND_RESOURCE时

这个参数必须为空

第三个参数是播放声音的标识

那么它这个标识跟我们介绍的第二个函数

sndPlaySound函数中的参数的值一样

都可以使用

PlaySound中还增加了许多其他的参数

比如说SND_ALIAS这是播放声音的来源为注册条目

这个是SND_RESOURCE

播放的声音来自资源

播放的声音来自文件名

如果没有正在被使用

立即返回不再播放

这个APPLICATION

使用应用程序指定的音频

这个PURGE停止声音的播放

ALIAS_ID是预先确定的声音标识

VC++面向对象与可视化程序设计(下):MFC编程基础课程列表:

第0章 课前讨论

-讨论实录

--0-0

第6章 MFC基础知识

-6-1 MFC概述

--6-1 MFC基础知识

-6-2 C++的基本知识

--6-2-1 类

--6-2-2 对象

--6-2-3 类的方法

--6-2-4 内联函数

--6-2-5 构造函数和析构函数

--6-2-6 重载

--6-2-7 友元函数

--6-2-8 友元类

--6-2-9 指针

--6-2-10 类的继承

--6-2-11 多态性和虚拟函数

-6-3 MFC类的组织结构及主要的类的简介

--6-3-1 MFC类的组织结构

--6-3-2 根类

--6-3-3 应用程序结构类

--6-3-4 可视对象类

--6-3-5 通用类

--6-3-6 OLE类

--6-3-7 ODBC数据库

-6-4 MFC中全局函数和全局变量

--6-4 MFC中全局函数和全局变量

第7章 Windows标准控件在可视化编程中的应用

-7-1 概述

--7-1-1

--7-1-2

-7-2 按钮控件及其应用

--128B12447816EEF99C33DC5901307461

-7-3 按钮控件及其应用

--7-3

-7-4 静态控件

--7-4

-7-5 列表框控件

--7-5-1

--7-5-2

-7-6 编辑框控件

--7-6

-7-7 组合框控件

--7-7

-7-8 对话框通用控件

--7-8-1

--7-8-2

-讲义源代码

--html

第8章 在MFC中创建应用程序的资源

-8-1&2 资源的应用以及菜单资源的使用

--8-1-1

--8-1-2

-8-3 快捷菜单的创建及其应用

--8-3

-8-4 加速键资源的创建及其使用

--8-4

-8-5 工具条资源的创建及其使用

--8-5

-8-6 字符串资源的使用

--8-6

-8-7 位图资源的创建及其使用

--8-7

-课堂示例源代码

--html

-第一次作业内容及要求

--html

--第一次作业及答题链接--作业

第9章 单文档与多文档

-9-1 概述

--9-1

-9-2 Doc/View框架的主要成员

--Video

-9-3 文档操作中的一些重要概念

--Video

-9-4 SDI编程实例

--Video

-9-5 MDI编程实例

--9-5-1

--9-5-2

-课堂示例源代码

--html

-第二次作业内容及要求

--html

--第二次作业及答题链接--作业

第10章 多媒体应用程序的设计

-10-1 利用音频函数实现多媒体程序设计

--10-1-1

--10-1-2

--10-1-3

--10-1-4

-10-2 利用Windows Media Player控件实现多媒体程序设计

--10-2

-课堂示例源代码

--html

第11章

-例11-1

--例1

-例11-2

--例11-2

-例11-3

--例11-3

-例11-4

--例11-4

-11-1 ODBC介绍与引用

--11-1

-课堂示例源代码

--html

第三次作业及答题链接

-第三次作业及答题链接

10-1-2笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。