大二时做的课程设计作品。

MP3播放器界面

MP3功能模块划分:

(1)main类是用于影片的文档类,实现影片中以窗口为单位的相关操作,这些包括窗口显示/隐藏、窗口移动与吸附等功能。

(2)MainForm类是主窗口影片剪辑的连接类,在这个类中实现了主窗口上各个按钮的具体功能,实现了对当前声音文件的播放控制、波形显示以及其他控制功能等。

(3)SongWave类用于获取当前声音的波形信息,然后用两个不同的形式显示出来,这些包括形式包括显示频谱图、显示波形图。

(4)ListForm类是歌曲列表窗口的连接类,在这个类中实现了为添加播放列表中的每首歌曲创建一个列表显示歌曲名,同时还实现了指示当前播放歌曲以及歌手以选曲播放的功能。

(5)SongList类是歌曲列表类,它是ListForm类得幕后支持者,它维护一个歌曲列表,实现了添加、指定歌曲的功能,同时通过广播事件通知其他几个类同步工作。

(6)LrcForm类是歌词窗口的连接类,主要用于同步显示当前播放歌曲的歌词信息,而这些信息来自于它的支持者SongLrc类。

(7)SongLrc类实现了歌词文件(*.lrc)的分析、重组和输出功能,能够根据当前歌曲播放的进度向LrcForm类对象传送适当的歌词信息。

除了这7大主要的功能模块外,还有3个类:自定义事件类CommEvent、自定义事件收发类Communications和歌曲条目显示类ListItem。

注:由于FileReferenceList类的限制只能读取指定某个文件夹中的MP3文件,因此此MP3的歌曲路径应为为“E:\sing\*”。

源码地址:

http://115.com/file/c2otwjoj#
MP3Player.rar

转载于:https://www.cnblogs.com/iwhk/archive/2012/09/17/2688859.html

MP3Player(附源码)相关推荐

  1. C#共享内存实例 附源码

    原文 C#共享内存实例 附源码 网上有C#共享内存类,不过功能太简单了,并且写内存每次都从开头写.故对此进行了改进,并做了个小例子,供需要的人参考. 主要改进点: 通过利用共享内存的一部分空间(以下称 ...

  2. java中batch基础_详解Spring batch 入门学习教程(附源码)

    详解Spring batch 入门学习教程(附源码) 发布时间:2020-09-08 00:28:40 来源:脚本之家 阅读:99 作者:achuo Spring batch 是一个开源的批处理框架. ...

  3. 炫酷,SpringBoot+Echarts实现用户访问地图可视化(附源码)

    点击上方"方志朋",选择"设为星标" 回复"666"获取新整理的面试文章 SpringBoot+Echarts用户访问地图可视化 意义 在常 ...

  4. C#使用Xamarin开发可移植移动应用进阶篇(7.使用布局渲染器,修改默认布局),附源码...

    原文:C#使用Xamarin开发可移植移动应用进阶篇(7.使用布局渲染器,修改默认布局),附源码 前言 系列目录 C#使用Xamarin开发可移植移动应用目录 源码地址:https://github. ...

  5. 黯然微信小程序杂记(三):微信小程序实现倒计时功能 附讲解教学 附源码

    黯然微信小程序杂记(三):微信小程序实现倒计时功能 附超详细注释 附源码 一.功能描述 二.界面展示 三.test.wxml代码 四.test.js代码(注释很详细 很易懂) CSDN私信我,有关微信 ...

  6. 黯然微信小程序杂记(二):小程序最新版登录并进行缓存模块的实现 附源码

    黯然微信小程序杂记(二):小程序最新版登录进行缓存模块的实现 附源码 一.功能描述 二.mine.wxml界面图片 三.mine.wxml代码 四.mine.wxss代码 五.mine.js代码 六. ...

  7. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(32)-swfupload多文件上传[附源码]...

    原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(32)-swfupload多文件上传[附源码] 文件上传这东西说到底有时候很痛,原来的asp.net服务器 ...

  8. 通用权限管理系统组件 中集成多个子系统的单点登录(网站入口方式)附源码

    通用权限管理系统组件 (GPM - General Permissions Manager) 中集成多个子系统的单点登录(网站入口方式)附源码 上文中实现了直接连接数据库的方式,通过配置文件,自定义的 ...

  9. 2款不同样式的CSS3 Loading加载动画 附源码

    原文:2款不同样式的CSS3 Loading加载动画 附源码 我们经常看到的Loading加载很多都是转圈圈的那种,今天我们来换一种有创意的CSS3 Loading加载动画,一种是声波形状的动画,另一 ...

  10. MultiRow发现之旅(六)- 使用MultiRow开发票据应用(附源码)

    前文回顾 MultiRow发现之旅(一)- 高效模板设计器 MultiRow发现之旅(二)- 详解属性管理器 MultiRow发现之旅(三)- 模板管理器和Table MultiRow发现之旅(四)- ...

最新文章

  1. 用pip安装tensorflow报错SyntaxError: invalid syntax
  2. oracle 取当天日期减一天 应该如何写
  3. 简单阐述下OC中UIImage三种创建方式~~~
  4. 移植libmxml到(arm-linux)
  5. php 当前页面停留时间,PHP 记录页面停留时间
  6. 吴恩达机器学习(十二)主成分分析(降维、PCA)
  7. 再谈WinRT自定义组件的开发
  8. Unicode编码详解
  9. jmeter TCP接口压力测试
  10. Kali Linux进阶篇:Nmap扫描网络空间存活主机技巧
  11. 你未必知道的 WebRTC:前世、今生、未来
  12. leetcode499 迷宫III
  13. opengl绘制太阳、地球、月亮,贴上纹理,设置光照,符合自转和公转规律
  14. 【python】用ChatGPT使用爬虫
  15. 2020全国计算机考试ps版本,2020年3月计算机等级Photoshop练习题及参考答案
  16. c语言编程文章排版,一种简单英文词典排版系统的实现 C语言编程
  17. Pathview包:整合表达谱数据可视化KEGG通路
  18. 2015.3.30第一次博客测试
  19. 【java期末复习题】第4章 面向对象基础
  20. Android技术知识点:什么是外边距(margin)

热门文章

  1. C++中实现回调机制的几种方式
  2. golang存储密码
  3. 《穿越计算机的迷雾》读书笔记三
  4. Python之路--前端知识--JavaScript
  5. mongod副本集的安装配置
  6. 吐槽: 移动端缓存策略
  7. JavaScript权威指南科03章 种类、值和变量(1)
  8. POJ3268 Silver Cow Party(最短路径)
  9. 数据恢复软件extundelete介绍
  10. 五.Java IO、NIO、文件、通讯