C++面向对象程序设计
报 告
姓名:
专业:电子与通信工程 学号:201622
时间:2016年12月5日
基于C++的MFC对话框的音乐播放器
1设计内容
设计题目:基于C++的MFC对话框的音乐播放器
设计内容:利用MFC应用程序、媒体控制接口MIC的基本知识,设计一个MP3播放器。要求能够播放常用Windows音频格式的文件;实现播放控制:播放、暂停、停止等;实现音量控制:声音放大、减小等功能。
本次作业的意义在于结合C++语言提供的思想和多样的媒体控制方法,结合用户对媒体播放器的要求和使用音乐播放器的习惯,设计了一款界面简单明了,操作简单实用的音乐播放器。
2 相关技术
2.1 VC技术应用的基本现状
Microsoft公司1998年推出了Visual C++6.0,它是支持Win32平台应用程序(application)、服务(service)和控件(control)开发的可视化编程的集成环境。与VC++5.0的最大不同之处是它的帮助功能更强大,MSDN(Microsoft Developer Networking)为包括VC++6.0在内的所有微软的程序产品提供在线帮助;另外,类的对象的可用成员函数、成员变量及函数的参数类型与个数都能动态显示在屏幕上,用户无须记住那些复杂而又枯燥乏味的函数名及复杂的参数,这无疑使得用VC++编程更加容易。所以VC++6.0可谓是Microsoft公司的王牌产品,编程功能强大而赢得广大程序的偏爱。
2.2 MCI命令接口编程
Windows MCI(media control interface)是控制多媒体设备的高层、通用的命令接口。MCI可控制所有Windows能驱动的多媒体设备,包括CD音频(CD Audio)、数字视频、动画、数字化波形声音、MIDI音序器、录像机及影碟机等。 MCI包含在Windows系统的MMSYSTEM.DLL动态链接库中,有以协调多媒体事件和MCI设备驱动程序之间的通信。一些MCI设备驱动程序,如影碟机设备驱动程序,可以直接控制目标设备;而另外一些MCI设备驱动程序,如Wave和MIDI设备驱动程序,可通过MMSYSTEM中的函数,间接控制目标设备;还有一些MCI设备驱动程序则提供与其他Windows动态链接库连接的高层接口。
Microsoft提供的MMSYSTEM.H文件中定义了调用了MCI功能的数据类型和函数原型,在使用MCI功能的任何源模块中都应包含该文件。 2.2.1 MCI命令
应用程序能过MCI设备发送命令(命令消息或命令字符串)来控制MCI设备,
MCI命令可以分为4类,如下所述:
系统命令:直接由MCI解释并由系统处理,是不传送到MCI设备的命令。 通用命令:所有MCI设备都支持的MCI命令。 可选命令:MCI设备可选择使用的MCI命令。
专用命令:针对某类MCI设备或集合的专有MCI命令。
MCI定义了两种接口方式,即命令消息方式和命令字符串方式。相应地,MCI命令可分为命令消息和命令字符串。主要的MCI命令及分类如表2-1所示,这些命令可能具有其相应的扩展形式。
表 2-1 MCI命令列表
MCI命令消息 MCI_SOUND MCI_CLOSE MCI_OPEN MCI_STATUS MCI_LOAD MCI_PAUSE MCI_PLAY MCI_RESUME MCI_STOP
MCI命令字符串 SOUND CLOSE OPEN STATUS LOAD PAUSE PLAY RESUME STOP
MCI命令说明
播放一段Windows指定的系统声音 关闭一个MCI设备 初始化一个MCI设备
从一个MCI设备返回有关的状态信息 从一个磁盘文件中加载数据 暂停播放数据 开始播放数据 重新开始播放或记录 停止播放或记录
2.2.2 MCI命令消息接口方式
所有MCI函数都以mci为前缀。对应于MCI命令消息和命令字符串接口方式,MCI函数也分为两类,即命令消息函数和命令字符串函数。在MMSYSTEM.H中定义了这些函数的原型。MCI函数如表2-2所示。
表 2-2 MCI函数
函数名 mciSendCommand mciGetDeviceID mciSendString mciGetErrorString
功 能 发送命令消息 获取MCI设备的ID 发送命令字符串
类型 命令消息接口函数 命令字符串接口函数
获取当前MCI错误的字符串描述 公用函数
MCI命令消息接口方式利用消息和数据结构来给多媒体设备发送命令和接收MCI设备传来的信息。这种方式的接口函数主要有3个,即mciSendCommand,
相关推荐: