




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课程实验报告学院 计算机学院 专业 网络工程 班级 16网工3班 题目 音乐播放器 教师 程庆 学生 代应豪 目录第一章 绪论41.1 简介41.2 开发背景41.3 开发环境4第二章 系统设计52.1 需求分析52.1.1 功能需求52.1.2 系统结构和流程图62.2. 界面需求62.3 系统性能及可靠性需求72.3.1 系统性能72.3.2 可靠性7第三章 流程图83.1 音乐播放83.2 上一首83.3 列表操作93.4 播放进度控制9第四章 测试用例104.1 主界面测试104.5 简要概述优缺点及改进13第五章 心得体会14附录I 程序代码16基于Visual C+6.0实现 简单的音乐播放器摘要:随着社会的发展,全国人们的生活水平得到了很大的提高,从追求物质生活提升到了精神享受。当我们完成繁重的工作后,我们需要尽情的释放来自各方面的压力。有研究证实,音乐有释放压力、缓解紧张情绪的作用。本系统以多媒体娱乐为主线,采用Visual C+为开发工具。使用成熟的MFC作为开发框架,具有开发速度快、便于管理等诸多优点。实现了添加音乐、删除音乐、音乐的播放顺序、显示音乐歌词、等一系列常用功能。当然程序在功能上还有很多的不足和缺陷。第一章 绪论1.1 简介音乐播放器是一种用于播放各种音乐文件的多媒体播放软件。它涵盖了各种音乐格式的播放工具,比如:MP3播放器,WMA播放器,MP4播放器等。它们不仅界面美观,而且操作简单,带你进入一个完美的音乐空间。当然,符合用户的使用习惯才是软件行业的立足之本。我们这款音乐播放器的设计思想来自我们使用的许多的音乐播放器操作以及我们自己对于软件功能开发的理解。也许,从某种意义上来说我们自己的角度并不能代表最终用户的意见。1.2 开发背景随着社会的发展,人们的生活水平得到了飞速发展。从追求物质生活提升到了精神享受层面,当我们完成繁重的工作后,我们需要尽情的释放来自各方面的压力。有研究证实,音乐有释放压力、缓解紧张情绪的作用。同时,现在网络中也存在大量的音乐播放器软件,有的软件是收费的,但是大多数的软件却是打着免费的旗帜,让广告充满了整个软件。这款音乐播放器绿色小巧,可以直接运行。1.3 开发环境硬件:Intel 酷睿 i3,8G内存,500G硬盘系统:Microsoft Windows 7 Professional软件:Microsoft Visual C+ 6.0第二章 系统设计2.1 需求分析2.1.1 功能需求根据项目的目标,我们可获得项目系统的基本需求,一下从不同角度来描述系统的需求,并且使用用例图来描述,系统的功能需求,我们从播放器的基本控制需要开始描述图 2-1 系统功能模块表 2-1 播放器基本控制 功能需求用例名称参与者目标前置条件基本事件流播放用户使得用户可以播放在播放列表中选中的歌曲播放器运行点击“播放”按钮;播放该歌曲暂停用户使得用户可以暂停正在播放的歌曲歌曲正在播放且未停止点击“暂停”按钮;暂停播放该歌曲停止用户使得用户可以停止播放正在播放的歌曲歌曲正在播放或暂停点击“停止”按钮;停止该歌曲上一首用户使得用户可以听上一首歌曲歌曲正在播放或暂停点击“上一首”按钮;播放上一首歌曲播放列表用户使得用户可以选择播放类型程序运行点击“播放列表”;转到该播放列表2.1.2 系统结构和流程图图2-2 系统流程图2.2. 界面需求播放器界面要求布局合理,颜色舒适,控制按钮友好,为了减少开发工程量,可以借鉴现在流行的播放器的皮肤作为播放器的界面目标需求。主题界面分为三个部分:主界面、播放列表、显示歌词面板。图 2-3 系统界面需求2.3 系统性能及可靠性需求2.3.1 系统性能1、当要求播放歌曲时,程序的响应时间不得超过0.5秒2、当要求暂停歌曲时,程序的响应时间不得超过0.5秒3、当要求停止歌曲时,程序的响应时间不得超过1.0秒4、当要求切换歌曲时,程序的响应时间不得超过1.5秒2.3.2 可靠性系统能持续运行,不影响其他应用程序的使用,不会占用过多的内存,不造成计算机死机等影响用户体验的问题。第三章 流程图3.1 音乐播放 图 3-1 音乐播放流程图3.2 上一首图 3-2 上一首音乐流程图3.3 列表操作图 3-3 列表操作流程图3.4 播放进度控制图3-4播放进度控制流程图第四章 测试用例4.1 主界面测试4.5 简要概述优缺点及改进优点:使用界面人性化:播放 暂停 继续 快进 回放 音量 属性 停止 一应俱全使用方便缺点:没有UI设计 只是简单的执行程序第五章 心得体会Windows 课程设计实验已经完成了,在这次的课程设计中不仅检验了我们本学期所学习的知识,也培养了我们如何自己动手开发一款难度适中的Windows应用程序,如何去做一件事情,又如何从头到尾完成一件事情。在设计过程中,与同学分工设计,和同学们相互探讨,相互学习,相互监督。学会了合作,学会了运筹帷幄,学会了宽容,学会了理解,也学会了做人与处世,和同学老师交流遇到的问题以及分析自己的心得体会,使得自己少走了很多弯路。课程设计是我们专业课程知识综合应用的实践训练,也是我们迈向社会,从事职业工作前一个必不少的过程”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础通过这次模具设计,我们在多方面都有所提高。通过这次模具设计,综合运用本专业所学课程的理论和生产实际知识进行一次冷冲压模具设计工作的实际训练从而培养和提高学生独立工作能力,巩固与扩充了课程所学的内容,了解了模具的基本结构,提高了计算能力全局掌控能力,同时各科相关的课程都有了全面的复习,独立思考的能力也有了提高。在这次设计过程中,体现出自己单独设计模具的能力以及综合运用知识的能力,体会了学以致用、突出自己劳动成果的喜悦心情,从中发现自己平时学习的不足和薄弱环节,从而加以弥补。在此感谢我们的老师,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪。同时感谢对我帮助过的同学们,谢谢你们对我的帮助和支持,让我感受到同学的友谊。 由于我们还是学生,水平有限在系统的设计上可能存在考虑不周的地方,在设计过程中难免出现错误,恳请老师们多多指教,我十分乐意接受你们的批评与指正,我们将万分感谢。同时,在这里还要感谢广大互联网的网友,我们系统的设计和实现都遇到过很多问题。其中,大部分都是通过查询互联网而解决的。在此,感谢互联网的网友和你们的博客文章。参考文献1、MSDN for Visual Studio 6.02、设计模式可复用面向对象软件的基础,Erich Gamma/Richard Helm/Ralph Johnson/John Vlissides著,李英军/马晓星/蔡敏/刘建中 等译,机械工业出版社3、深入浅出MFC(第2版),侯俊杰著,华中科技大学出版社4、Microsoft Visual C+.NET 技术内幕(第6版),George Shepherd/David Kruglinski著,潘爱民译,清华大学出版社5、C+编程思想,Bruce Eckel著,刘宗田/邢大红/孙慧杰 等译,机械工业出版社6、21天学通C,Jesse Liberty著,康博创作室译,人民邮电出版社7、C+标准程序库,Nicolai M.Josuttis著,侯捷/孟岩 译,华中科技大学出版社8、Windows程序设计,Charles Petzold著,北京博彦科技发展有限公司译,北京大学出版社附录附录I 程序代码#include#include /CString的头文件#include#include#include#include #include#pragma comment(lib,winmm.lib)int main() MCIERROR re; FILE *fp; char slen256=0,title30=0,artist30=0,test,song30,st; CString fe; long here,llen; int m,n,v,s; here=clock();/时间函数必须放在循环外面 printf(请输入歌名: ); fflush(stdin); gets(song);/输入曲目名称 fe.Format(open %s alias beatit,song); re=mciSendString(TEXT(fe.GetBuffer(fe.GetLength(),0,0,0);/TEXT是宏变量,alias不能少 printf(n); printf(请选择一个命令对应的数字:n1.播放 2.暂停 3.继续 4.快进 5.回放 6.音量 7.属性 8.停止n); while(scanf(%d,&n)!=EOF) if(re!=0) n=7; if(n=1) mciSendString(TEXT(play beatit),0,0,0); printf(successfulnn); else if(n=4)/快进 here=here+10000; fe.Format(seek beatit to %ld,here); mciSendString(TEXT(fe.GetBuffer(fe.GetLength(),0,0,0);/to后面的long数值必须真的是一个long数值,不能用变量名 mciSendString(TEXT(play beatit),0,0,0);/seek后还需要继续用open才能播放音乐 printf(successfulnn); /增加一个播放状态函数进行测量 else if(n=5)/快退 here=here-10000; if(here0)/快退到开始状态 here=0; fe.Format(seek beatit to %ld,here); mciSendString(TEXT(fe.GetBuffer(fe.GetLength(),0,0,0); mciSendString(TEXT(play beatit),0,0,0); printf(successfulnn); else if(n=8)/停止 mciSendString(TEXT(close beatit),0,0,0); printf(successfulnn); exit(0); else if(n=6)/音量 printf(请输入新的音量大小,范围:1 to 1000n); scanf(%d,&v); if(v1000) printf(failednn); else fe.Format(setaudio beatit volume to %d,v); mciSendString(TEXT(fe.GetBuffer(fe.GetLength(),0,0,0); mciSendString(TEXT(play beatit),0,0,0); printf(successfulnn); else if(n=2)/暂停 mciSendString(TEXT(pause beatit),0,0,0); printf(successfulnn); else if(n=3)/播放 mciSendString(TEXT(resume beatit),0,0,0); printf(successfulnn); else if(n=7)/属性 if(re!=0) printf(信息:n歌曲打开失败nn); else mciSendString(TEXT(status beatit length),slen,255,0); llen=strtol(slen,0,0)/1000;/测量出媒体长度,单位为秒,需要转化 m=llen/60;/分 s=llen%60;/秒 fp=fopen(song,r); if(fp=NULL) printf(failednn); exit(0); fseek(fp,-125L,2);/讲指针移动到距离歌曲末尾125个字节处 fgets(title,30,fp); while(test=fgetc(fp)!=0);/指针跳跃 fflush(stdin); fgets(artist,30,fp); pr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年事业单位工勤技能-安徽-安徽水利机械运行维护工五级(初级工)历年参考题库含答案解析
- 2025年事业单位工勤技能-安徽-安徽土建施工人员三级(高级工)历年参考题库含答案解析
- dA-NHbenzylOCF3-生命科学试剂-MCE
- 教育技术专业职业规划:物理教研面试题及答案指导
- 2025信息光学试题及答案
- 高级线程工程师面试题库
- 酒厂厂长招聘面试题及答案解析
- 护理课件网页
- 免疫功能知识培训课件
- 养护知识培训简讯课件
- 七下科学第四章知识点
- 2025年中国建设银行信用贷款协议
- 不锈钢栏杆、扶手合同范本
- 《常见精神障碍诊断与治疗》课件
- DB37-T 4522-2022平原河网区夏玉米清洁生产技术规程
- 污水处理厂运营与管理经验分享
- 2025年上半年国航股份广东分公司航空医师岗位招聘2人易考易错模拟试题(共500题)试卷后附参考答案
- 2023《广东省建设工程消防设计审查疑难问题解析》
- 2025年咖啡粉末香精项目可行性研究报告
- 消化道出血介入术后护理
- 第四章 第3节 平面镜成像2024-2025学年新教材八年级上册物理新说课稿(人教版2024)
评论
0/150
提交评论