版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《.net技术》实习报告带智能关机和查看日历功能的音乐播放器设计班级:电子信息工程01班指导老师:林**姓名:高乐顺学号:**********设计时间:2010年12月20日至2010年12月30日
正文开始设计目的:很多人在使用播放器的时候下载的播放器软件总是比较大,一般软件较大的打开就会比较慢,运行起来也没较小的软件运行的更“流畅“。而且当我们使用播放器的时候或是只用电脑的时候我们有时会忘记关掉电脑就离开或是睡着了!虽然电脑自带的操作系统也可以设置定时关机但比较麻烦,对电脑初学者更是不知道怎么使用操作系统设置定时关机啦!还有就是我们电脑桌面下的时钟一般只显示了几点钟,并没有显示今天是多少号,所以在影月播放器中添加一个可以查看日历的功能是很必要的!实现的功能:在这里我就为大家设计一款小巧的音乐播放器,同时还带有智能关机功能,所谓智能关机就是你想怎么时候关机就什么时候关机,你想立刻关机就立刻关机,想定时关机就可以自己设置关机时间,设置方法非常的简单啦。同时你只需要单击一下一个“三角图标键”(在下面还将结合图示提到)就可以看到日历表了,在日历表里你也可以选择查看你需要的那个月的日历表。同时我也在播放器中添加了显示现在时钟的功能。下面介绍一下我设计的播放器的所有功能:首先你可以通过“添加文件夹”按钮添加你选择的文件夹内的所有音频文件,你也可以通过“添加文件”按钮单个添加你所要添加的音频文件,具体方法在下面我会给出截图加以说明,保证一看就懂,就会用。添加音乐文件后你就可以在你的播放列表里看到你添加的歌曲名了。你可以通过双击列表中的歌曲名进行播放你双击的歌曲或者单击选中列表中歌曲名后再单击播放按钮进行播放。在播放时你可也看到正在播放的歌曲名和播放进度,这里的播放进度使用显示正在播放的歌曲“已经播放了多长时间”和这首歌要播放的“总时间”,还有就是上一曲、暂停、下一曲、停止,除实现播放的基本功能外,还有一个功能那就是我在上面给大家提到的“智能关机”物体规则震动发出的声音称为“音乐”,由有组织的乐音来表达人们思想感情、反映现实生活的一种艺术就是音乐,音乐是一种符号,声音符号,表达人的所思所想,音乐能表达一个人的内心世,界音乐能是人快乐,能使人放松心情。为了方便人们能够听到美丽的音乐,音乐播放器就成为我们的音乐大师了。设计好的播放器运行时如下图:实现设计的过程:播放器功能图解:播放器所具有的功能播放器所具有的功能智能关机!显示当前时间拖动播放器窗体显示播放歌曲信息添加音频文件双击列表中歌曲名拖动播放播放进度滑块控制播放位置播放暂停停鞥止上曲下曲自动保存列表现在关机定时关机操作流程图:先打开先打开安装好的播放器播放器界面加要你需要播文的歌曲文件回到播放界面双击列表或是先单击选中歌曲名再单击播放按钮关机播放歌曲设置定时关机时间→确定→时间到→确定关机下面说明下我设计的具体步骤,我设计音乐播放器将采用WindowsMediaPlayer的编程接口和C#.NET编程技术,我使用VisualStudio2010作为开发工具。要使用首先要具有c#.net的基本编程技术,然后然后下载VisualStudio2010作为开发工具,安装好后就可以开始编程了,打开VisualStudio2010新建项目中选择新建windows窗体,创建好窗体后首先从工具箱中向窗体添加“WindowsMediaPlayer”组件具体方法如下:(1)“工具箱”右键“选择项(I)”(2)在弹出的“选择工具箱项”对话框中选择“COM组件”选项卡。(3)在COM组件列表中选择WindowsMediaPlayer,单击确定。播放音乐主要采用的的是调用WindowsMediaPlayer接口,首先需要构造一个界面,在界面上创建如上图中的播放列表框控件(listbox)、和“上一曲”(button1)、“播放/暂停”(button2)、“下一曲”(button3)“停止”(button4)控件。播放/暂停的代码如下:PlayAndStop();再另定义一个方法如下:privatevoidPlayAndStop(){index=this.listBox1.SelectedIndex;//获得当前选定的文件的索引try{if(stop%2==0){stringselectname=this.listBox1.SelectedItem.ToString();//获取选定的文件名stringplayurl=playlist[selectname].ToString();axWindowsMediaPlayer1.URL=playurl;axWindowsMediaPlayer1.Ctlcontrols.currentPosition=currentPosition;//当前播放的进度stop=stop+1;axWindowsMediaPlayer1.Ctlcontrols.play();currentPosition=0;}else{currentPosition=axWindowsMediaPlayer1.Ctlcontrols.currentPosition;//暂停时的进度axWindowsMediaPlayer1.Ctlcontrols.pause();stop=stop-1;}}catch(Exception){return;}}停止的单击事件代码如下:privatevoidbutton4_Click(objectsender,EventArgse){axWindowsMediaPlayer1.Ctlcontrols.stop();}接下来添加一个trackBar控件作为声音调节控件。代码如下:axWindowsMediaPlayer1.settings.volume=this.trackBar1.Value;另外还要在窗体的加载事件中设定这个控件的最小值和最大值,在下面的窗体事件中还会提到其代码的。现在在窗体中添加一个groupBox组件,再在groupBox中添加添加“添加文件”、和添加“添加文件夹”控件。在此button的cliect事件中首先调用FolderBrowserDialog创建一个实例,然后判断用户点击的按钮,如果是DialogResult.OK然后获得其绝对路径,然后创建一个FileInfo对象,然后获得该文件夹下扩展名为.mp3、.wma、、、.wMa的文件,然后把他们加载到播放列表中,部分代码如下:在写代码之前还要记得添加一个openFileDialog组件。部分过程图如下:在使用num++之前请先定义,还有上面提到的stop也要先定义,可以在classForm1类中首先定义,“添加文件”按钮代码:privatevoidbutton5_Click(objectsender,EventArgse){num++;//openFileDialog1.Filter="mp3格式文件|*.mp3|wma文件格式|*.wma|所有D文件t|*";openFileDialog1.Multiselect=true;openFileDialog1.Title="请选择音频文件";if(openFileDialog1.ShowDialog()==DialogResult.OK){stringfilepath=this.openFileDialog1.FileName;FileInfof=newFileInfo(filepath);stringfilename=num.ToString()+"-"+f.Name;playlist.Add(filename,filepath);this.listBox1.Items.Add(filename);}“添加文件夹”按钮代码:privatevoidbutton6_Click(objectsender,EventArgse){folderBrowserDialog1.SelectedPath=@"d:\";//设置文件夹的初始目录folderBrowserDialog1.ShowNewFolderButton=true;//显示新建文件夹按钮folderBrowserDialog1.Description="请选择MP3文件的路径";//对话框的说明文字folderBrowserDialog1.ShowDialog();//显示对话框stringpath=folderBrowserDialog1.SelectedPath;stringapplicationaddress=Application.StartupPath;stream=newFileStream(applicationaddress+"配置文件.txt",FileMode.Create);StreamWriterwriter=newStreamWriter(stream);writer.Write(path);writer.Close();stream.Close();NewMethod(path);}上面提到的NewMethod()方法另定义其代码如下:privatevoidNewMethod(stringpath){DirectoryInfodir=newDirectoryInfo(path);//实现MP3格式的加入处理foreach(FileInfofindir.GetFiles("*.mp3")){stringfilepath=f.FullName;num++;stringlistfilename=num.ToString()+"-"+f.Name;//显示到控件的文件的名称playlist.Add(listfilename,filepath);//添加到集合的文件名称this.listBox1.Items.Add(listfilename);}}现在在窗体中添加另一个groupbox用于装入4个label控件其中两个命名为“当前进度”和“总时间”另两个命名为“空”,位置安排如图:其中两个不去名字的原因是为了在运行的时候不影响视觉是的不适,即使界面美观,但他们的存在又是有必有的如上图中的当前时间和总时间下面显示的时间值就是那两个没有任何名字的标签显示的,它们并没不需要你输入代码但是在timer控件中的tick事件中将会用到它们,即让它们显示要显示的时间。现在就来添加一个timer控件其默认名为timer1不需要改动,如果为了识别也可以改个名字,在后面还需要添加这种控件,这里的timer1的tick事件代码如下:privatevoidtimer1_Tick(objectsender,EventArgse){try{this.label3.Text=axWindowsMediaPlayer1.currentMedia.getItemInfo("title");this.label4.Text=axWindowsMediaPlayer1.Ctlcontrols.currentPositionString;this.label6.Text=axWindowsMediaPlayer1.currentMedia.durationString;}catch(Exception){return;}}现在在窗体的右下角有加入两个标签控件其中一个命名为“当前时间”另一个不需要任何命名,用于显示但前时间,而命名的那个只是为了在显示当前时间时在前面起个说明作用,让用户看起来好理解而已,也适合人们视觉上的习惯。现在已经实现了播放器的基本功能了。需要块进的时候可以拖动窗体上的播放位置控件吗,这个空间按是windows控件上自带的所以我就没有另外添加了,调节播放位置的方法如下图:在控制播放音量的时候方法和控制播放位置方法一样只不过调节播放器位置控件是我另外添加的而已。
接下来就是智能关机的事了直接调用系统的shutdown.exe来实现计算机的关闭、重启和用户注销。方法如下:首先进行引用usingSystem.Dinogistics;空间。在关机键的单击事件中写入代码如下:if((MessageBox.Show("确实要关闭计算机?","关闭系统",MessageBoxButtons.YesNo,MessageBoxIcon.Question))==DialogResult.Yes){CmdPc("Shutdown.exe-s-f");}实现这个关机的代码比较简单,当实现定时关机是就又要用到timer组件了。在定时的时候我还选用了dateTimePicker组件进行定时关机的设置的时间设置,用了这个组件用户还可以通过它查看日历方法图如下:如果你在设置时间时误设置了错误的时间——就是你设置的时间比当前时间还小聚会弹出对话框提示你设置正确的时间,在设置好定时时间后,就单击确定按钮,然后弹出对话框提示你的定时设置成功(定时关机设置成功!),接下来就是等待关机了。到这里我的音乐播放器的设计过程已经完成了。
自我总结首先谈谈我对.net的粗浅认识吧,.NETFramework是微软推出的一个全新概念。.NET的全称为.NETFramework,又被译为.NET框架。简单地讲,.NET代表了一个集合、一个环境、一个可以支持下一代internet可编程的平台。.NET是生成和运行应用程序所依托的基础平台。微软公司将.NET描述为“支持生成和运行下一代应用程序和XMLWebSerices的内部windows组件”,主要目标是建立一种企业服务的开放机制,这种机制是面向WebSericesde。我用的是C#编程语言设计的播放器,C#是编写应用程序的编程语言之一;而visualstudio则是一种集成开发环境,再该环境下能够方便、高效的编写、调试、生成应用程序。.net技术-.NET的核心技术:
WebServices是.NET的核心技术。那什么是WebServices呢?正如Web是新一代的用户与应用交互的途径,XML是新一代的程序之间通讯的途径一样,WebServices是新一代的计算机与计算机之间一种通用的数据传输格式,可让不同运算系统更容易进行数据交换。WebServices有以下几点特性:Webservices允许应用之间共享数据;Webservices分散了代码单元;基于XML这种internet数据交换的通用语言,实现了跨平台、跨操作系统、跨语言。那微软的ASP和Webservices究竟有什么不同呢,ASP仍然是一个集中式计算模型的产物,只不过是披着一层互联网的外衣。但WebServices却是一个迥然不同的精灵,它秉承“软件就是服务”的真言,同时顺应分布式计算模式的潮流。而它的存在形式又与以往软件不同。这种组件模式,小巧、单一,对于开发人员来讲,开发成本较低。
在这里指出Webservices不是微软发明的,同样也不属于微软专有。Webservices是一个开放的标准,和HTTP、XML、SOAP一样。他们是一个工业标准而非微软标准,WS-I是为了促进WebServices互通性的联盟组织,最初是由IBM和微软所发起,其它的成员包括BEASystem、惠普计算机(HP)、甲骨文(Oracle)、英特尔(Intel)和SUN计
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年协议离婚离婚后子女抚养关系变更服务合同3篇
- 2024版跨国餐饮服务与管理合同
- 2025年度消防工程设计及消防安全管理合同(学校)3篇
- 2024年版商用车辆买卖协议样本版B版
- 简单图形实现课程设计
- 2025年度李子树苗批发供应合同3篇
- 2025年专业派遣用工协议2篇
- 2024年综合授信协议(循环借款版)
- 2025年度土地征收与农业转移人口市民化协议书3篇
- 2024版天然气销售协议模板
- 2025年1月八省联考河南新高考物理试卷真题(含答案详解)
- 物业管理服务人员配备及岗位职责
- 建设工程检试验工作管理实施指引
- 郑州2024年河南郑州市惠济区事业单位80人笔试历年参考题库频考点试题附带答案详解
- 深静脉血栓的手术预防
- 【9道期末】安徽省合肥市庐阳区2023-2024学年九年级上学期期末道德与法治试题
- 腹腔镜全胃切除手术配合
- 2024-2030年中国非物质文化遗产市场前景调研及投资风险分析报告
- 安徽省芜湖市2023-2024学年高一上学期期末考试 物理 含解析
- 2024年社区工作者考试必背1000题题库【含答案】
- 看图写话植树教案
评论
0/150
提交评论