项目主要通过window API函数mcisendstring播放MP3格式文件。程序最终实现可以接收文件拖曳消息,通过往窗口拖入文件来添加播放列表,通过按键来播放列表歌曲,以及上下首,同步显示歌词,支持随机播放,顺序,单曲循环,文件记录播放痕迹等,除了不能联网下载歌曲和歌词解析存在的小问题外,几乎与QQ音乐的功能相同。项目采用单例(CMp3Manager类)模式进行封装播放列表,以及提供接口实现了对播放音乐的增加列表,暂停和上下首。在win32的基础上封装CApp类以及CWnd类。其中还通过调用非公开的API函数SetLayeredWindowAttributes使得窗口透明。涉及到的技术有:win32消息的封装,窗口透明,STL容器的使用,文件拖曳处理,lrc歌词文件解析。
1