仿酷狗音乐播放器已开源!

转载请说明原出处,谢谢:http://blog.csdn.net/zhuhongshu/article/details/41037875

       距离我发布测试版的Redrain音乐盒(仿酷狗播放器),现在正好刚2个月。博客留言和QQ群里也一直有网友关心这个小项目开源的问题。先感谢网友对这个小项目的支持。之前我一直担心版权问题而没有开源这个项目,因为我只是个在校大学生,不想惹麻烦,希望大家体谅!

      关于这个Redrain音乐盒的发布程序的说明和使用方法,见《Redrain仿酷狗音乐播放器开发完毕,发布测试程序》

      今天,我把这个项目的源代码上传。包括了可以编译工程所需的所有代码文件,已经软件的布局文件,但是没有包括软件需要的素材,这也是为了避免引起与酷狗播放器的版权问题。

      如果有哪位朋友有完整的音乐库素材,并且愿意免费提供给我把这个项目换一套素材,我将感激不尽!详细的说明请看《关于仿酷狗音乐播放器开源:寻求一套音乐播放器素材,让仿酷狗开源》

      开源这个小项目的目的,是为了帮助更多使用DuiLib或者UiLib库的朋友们,去学习和熟悉这个库。我个人非常喜欢DuiLib库,同时也是国内最早的开源DirectUI界面库。并且DuiLib并不是没人管的孩子了,DuiLib2.0和DuiLib3.0版本也在开发中,据说DuiLib3.0将是一个跨平台的界面库。在此希望DuiLib能发展的更好!

     我在这个项目中使用的是UiLib库而不是DuiLib库,UiLib库是DuiLib库的扩展版本,增加了一些动画控件的支持,扩展了部分控件,但是核心代码并没有改变,与DuiLib使用方法完全一样,也可以用UiLib库直接编译使用DuiLib库编写的代码。项目中的UiLib是我为了适应仿酷狗而专门修改过的,也修复过必要的bug,所以如果你使用原版的DuiLib或者UiLib库去编译这个功能,最终的程序效果和我发布的不一样。关于bug的修复请看博客中更早期的文章。我自己使用并且维护的DuiLib库和UiLib库的下载地址见博客:《Redrain个人维护并使用的DuiLib和UiLib库源码下载地址》

     看这个程序代码的时候建议结合我之前发布的《仿酷狗音乐播放器开发日志》系列的文章,我在文章里说明了开发步骤和思路,再结合这份源码便可以完全理解这个项目。

     由于上传的代码中不包括素材,所以直接编译出来的程序运行后是非常难看的。所以我同时提供了已经内部集成了素材的程序,大家可以通过它看到程序运行的完整真实效果。项目是用vs2012开发的。

 

      在这个项目源码中,同时包含了webkit内核浏览器控件、音乐播放类、换肤功能、拖拽功能、菜单等等。关于菜单的说明见:《为duilib的MenuDemo增加消息响应,优化代码和显示效果》,这个菜单的功能如下:

        1、可以展现多级菜单

        2、可内嵌自定义控件,并且控件可以向主窗体发送消息,如图的红色叹号就是个按钮控件,可以制作酷狗音乐的托盘菜单的播放暂停按钮和进度控制进度条。

        3、菜单拥有阴影效果

        4、菜单可以自定义前方显示小图标,并且可以控制图标的大小和是否显示

        5、菜单可以根据是否拥有子菜单决定是否显示小箭头

        6、菜单可以添加分割线

        7、每个菜单项都可以单选和复选的功能

        8、优化菜单的xml描述文件,编写方便容易,如果要写一个二级菜单,比如编写图片中的菜单测试4以及他的子菜单,只需如下代码就可以了

        9、可以通过键盘的按钮控制菜单的选项

        10、每个菜单项的高度宽度是任意调整的

     在这个项目中,还有一些未实现的功能,但是我并不打算继续完成这些功能了:

     1、退出程序时逐渐缩小的动画特效
     2、各个菜单的响应
     3、歌词功能(已经有网友做出来了,我就不另外做了)
     4、嵌入桌面的桌面歌词

结束语:

   如果程序代码中有任何bug,或者对代码有疑问,可以在QQ群里找到我,或者加我QQ。同时开源代码只是为了学习交流,不可用于商业程序,源码对使用者造成的损失,概不负责!

   源码下载地址:点击打开链接

备份下载链接:http://download.csdn.net/detail/jdsjlzx/8148023

时间: 2025-01-17 07:39:45

仿酷狗音乐播放器已开源!的相关文章

关于仿酷狗音乐播放器开源:寻求一套音乐播放器素材,让仿酷狗开源

转载请说明原出处,谢谢~~                   距离发布测试版的仿酷狗音乐播放器,已经几个月过去了.期间很多网友加我QQ来问我开源的问题,我也早有开源意向.但我也一直没有得到可靠的信息,保证开源后没有任何问题.      所以我打算给这个软件完全换一套界面素材,放弃原来的酷狗素材.这样开源也就没有任何问题了,问题是我个人PS水平太烂,只会切切图.现在寻求一套完整的音乐播放器的素材,素材内容要全面,可以用来替代酷狗的素材.如果有哪位朋友有这样的素材,或者有时间可以做出一套素材让我使

仿酷狗音乐播放器开发日志二十一 开发动态调色板控件(附源码)

转载请说明原出处,谢谢~~           上一篇仿酷狗日志结束后,整个换肤功能就只剩下调色板功能没有做了,我本以为会很简单,但是研究了酷狗的调色板功能后发现不是那么简单的事情.首先看一下酷狗的调色板的样子:         我原本以为酷狗的主界面只是一张图片,然后通过鼠标坐标来选择颜色,简单粗暴.等我开始做这部分时发现情况不一样.         可以看到,酷狗的调色板分为两部分,上半部分是调色板的主界面,下半部分是调整亮度的工具栏,我这里分别给他们起名为Pallet和Bar方便说明.这个

仿酷狗音乐播放器开发日志二十二 动态调色板控件第二版(性能大幅提升附源码)

转载请说明原出处,谢谢~~         在上次写的博客<仿酷狗音乐播放器开发日志二十一 开发动态调色板控件(附源码)>发布后,我在群里和网友讨论这个控件的性能和优 缺点,发现了他很多不足,还有很多提升空间,之后我简单的修改了代码提升了控件的响应速度.        昨天网友"风之羽翼"联系到我,他在我原来写的控件基础上,对绘图的算法进行重写,大幅提升了控件的绘制速度,算法也精准了很多,最终的控 件效果要比原酷狗更加流畅,于是今天把新的控件代码上传,供感兴趣的朋友使用.在

仿酷狗音乐播放器开发日志二十——换肤功能背景图片控件的制作(附源码)

转载请说明原出处,谢谢~~           <仿酷狗音乐播放器开发日志二十>里做了换肤功能的一部分,今天完成其他的部分.酷狗的换肤窗口里的背景图可以让用户选择来换图,原酷狗的背景图的小图标,有normal.hover.down等多种状态,鼠标移动上去便会发生变化.如图        当鼠标经过时会有个黑色图片覆盖,边框变为浅蓝色.并且在他上面显示出作者的一些信息.要实现这个效果应该另外开发一个控件来支持动态的信息展示效果.我把这个小控件的开发过程和源码发一下,给学习做duilib控件的新手

仿酷狗音乐播放器开发日志——整体框架分析

转载请说明出处,谢谢~~ 学习duilib界面库有一段时间了,除了仓鼠软件共享以外还没用它开发过什么完整的软件项目.今天看到酷狗音乐播放器做得不错,经过几年的改革,酷狗现在的UI已经相当不错了.在这个假期,我决定做一个仿酷狗音乐播放器,模仿酷狗的软件界面,并加入基本的音乐播放功能,在QQ空间写出开发日志以作记录~~     首先分析一下酷狗播放器的界面布局.     很简单明了的布局方式,我把它先大致分为3部分,在Firework里贴上酷狗的软件的截图,然后使用切片工具对三部分进行精确分割,得到

仿酷狗音乐播放器开发日志十九——CTreeNodeUI的bug修复二(附源码)

转载请说明原出处,谢谢        今天本来打算把仿酷狗播放列表的子控件拖动插入功能做一下,但是仔细使用播放列表控件时发现了几个逻辑错误,由于我的播放 列表控件是基于CTreeViewUI和CTreeNodeUI做得,所以产生这几个bug的原因还在于他们两个,在<仿酷狗音乐播放器开发日志十一 --CTreeNodeUI的bug修复>中已经修复过一个动态添加控件的相关bug,这属于第二次修复了.关于第一次bug的修复,后来 Duilib扩展群的 joe 又进行过比我更全面的修复,我现在使用的C

仿酷狗音乐播放器开发日志二十四 选项设置窗体的实现(附328行xml布局源码)

转载请说明原出处,谢谢~~        花了两天时间把仿酷狗的选项设置窗体做出来了,当然了只是做了外观.现在开学了,写代码的时间减少,所以整个仿酷狗的工程开发速度减慢了.今天把仿酷狗的选项设置窗体的布局代码分享出来,给学习duilib布局的朋友做个demo.现在编写的仿酷狗选项设置窗体和原酷狗的窗体不细看几乎看不出差别,控件的布局位置和原酷狗最多只有几个像素的位置差别.        先来看一下原酷狗的选项设置窗体的其中一个页面:        如果还不太会布局的朋友可以先看我前些日子写的关于

仿酷狗音乐播放器开发日志二十七 用ole为窗体增加文件拖动功能(附源码)

转载请说明原出处,谢谢~~        中秋到了,出去玩了几天.今天把仿酷狗程序做了收尾,已经开发完成了,下一篇博客把完结的情况说一下.在这篇博客里说一下使用OLE为窗体增加文件拖拽的功能.使用播放器,我更喜欢直接拖动音乐文件添加到软件里,所以做这个功能很重要.做OLE拖拽之前学习了两篇文章: http://www.codeproject.com/Articles/840/How-to-Implement-Drag-and-Drop-Between-Your-Progra%E3%80%91 h

仿酷狗音乐播放器开发日志十五——音乐电台列表控件的实现

转载请说明原文出处,谢谢~~             前些日子封装了好几天控件,把webkit浏览器控件,vlc视频播放控件,音频播放控件做好了,做这些控件一来是可以单独使用,用到其他项目中,而来可以直接用到这个仿酷狗播放器项目中,后期把他们结合起来就是个完整播放器了.           今天就继续前段时间的工作,继续完善仿酷狗的界面.前面的文章里已经把左侧的各个列表的外观做好了,尤其是做好了播放器列表,不过今天发现,音乐电台列表中的电台项目也是个比较复杂的控件,所以今天就把他做出来.