目录
一、前言
1、功能设计要求1
1). 程序应能够读取MP3文件,并播放其中的音频。
2). 程序应能够处理可能出现的异常,如文件不存在、文件读取错误等。
3). 程序应具有良好的用户界面,方便用户进行操作。
4). 程序应具有良好的兼容性,能在不同版本的C#中正常运行。
提示:此功能可以使用WindowsMediaPlayer控件
2、功能设计要求2
1). 程序应能够播放ogg文件。
2). 程序应能够处理可能出现的异常,如文件不存在、文件读取错误等。
3). 程序应具有良好的用户界面,方便用户进行操作。
4). 程序应具有良好的兼容性,能在不同版本的C#中正常运行。
提示:此功能可以使用Nuget程序包中的Naudi.Vorbis控件
二、设计思路
通过调用 Windows Media Player 控件和 NAudio 库提供的功能来实现音频文件的播放,同时在用户界面上提供了一些基本的控制功能,如选择文件、调节音量等。
代码的主要步骤和功能:
1)引入所需的命名空间,包括 NAudio.Vorbis 和 NAudio.Wave,用于处理音频文件。
2)创建了一个 Windows 窗体应用程序,其中包含了一些控件,如按钮、列表框、标签和滑块,用于用户交互和显示信息。
3)实现了一个 musicplay 方法,用于根据音频文件的扩展名选择合适的播放方式。
4)实现了按钮点击事件,用于选择音频文件、播放选定的音频文件、停止播放、播放下一首音频 文件以及播放指定的 OGG 文件。
5)实现了列表框选中项改变事件,用于在用户选择不同的音频文件时更新播放器的 URL 标签示。
6)实现了滑块滚动事件,用于调节播放器的音量。
7)实现了文件对话框的打开事件,用于选择音频文件。
8)实现了使用 NAudio.Vorbis 库播放 OGG 文件的功能。
三、窗体设计
1、样式设计
2、控件介绍
1)、Windows Media Player 控件: 这是一个 ActiveX 控件,用于播放音频和视频文件。在 Windows 窗体应用程序中,可以将其添加到窗体中,并通过其属性和方法控制媒体文件的播放、暂停、停止等操作。
2)、按钮控件 (Button): 按钮控件用于在用户单击时触发特定的事件或执行特定的操作。在代码中,有几个按钮用于选择音频文件、播放、停止、播放下一首音频等操作。
3)、列表框控件 (ListBox): 列表框用于显示一列项,并允许用户从中选择一个或多个项。在代码中,列表框用于显示选定的音频文件,并允许用户选择其中一项以播放相应的音频。
4)、标签控件 (Label): 标签控件用于显示文本或图像,通常用于显示静态文本或标识其他控件。在代码中,标签用于显示当前播放的音频文件名和音量值。
5)、滑块控件 (TrackBar): 滑块控件用于允许用户通过拖动滑块来选择值,通常用于调节音量、亮度等参数。在代码中,滑块控件用于调节播放器的音量。
6)、文件对话框 (OpenFileDialog): 文件对话框用于在用户选择文件时打开一个对话框,允许用户浏览文件系统并选择文件。在代码中,文件对话框用于选择要播放的音频文件。
四、功能设计
1、定义变量
存储选定的音频文件路径数组,存储本地音乐文件路径列表
string[] files; // 存储选定的音频文件路径数组
List<string> localmusiclist = new List<string> { }; // 存储本地音乐文件路径列表
2、播放音乐的方法
这段代码定义了一个名为 musicplay 的方法,用于根据音频文件的扩展名来决定如何播放音乐。使用 Path.GetExtension 方法获取文件的扩展名,