您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 项目/工程管理 > c#课程设计报告音乐播放器
ViscualC#编程实例一、任务目标通过建立实例“音乐播放器”,来掌握windows应用窗体。二、功能实现实现的功能有:播放模式:顺序,列表,随机,单曲。添加文件:添加单个文件,添加文件夹。删除文件:选中的,重复的,错误的以及全部。播放歌曲:播放,暂停。可以添加的文件有*.MP3,*.Wma,*.swf,*.wmv,*.avi文件。三、关键代码publicpartialclassForm1:Form{privatevoidAddFiles(){this.axWindowsMediaPlayer1.currentPlaylist.clear();listView1.Items.Clear();listView1.BeginUpdate();Class1lf=newClass1();ListViewItem[]lvi=lf.searchDirectorFile(this.folderBrowserDialog1.SelectedPath);for(inti=0;ilvi.Length;i++){if(lvi[i]==null){break;}lvi[i].SubItems[0].Text=(listView1.Items.Count+1).ToString();this.axWindowsMediaPlayer1.currentPlaylist.appendItem(this.axWindowsMediaPlayer1.newMedia(lvi[i].SubItems[2].Text));this.listView1.Items.Add(lvi[i]);}listView1.EndUpdate();}publicForm1(){InitializeComponent();this.axWindowsMediaPlayer1.stretchToFit=true;this.axWindowsMediaPlayer1.settings.setMode(loop,true);using(RegistryKeyuserKey=Application.UserAppDataRegistry){if((this.folderBrowserDialog1.SelectedPath=userKey.GetValue(MyMedia)asstring)==null){this.folderBrowserDialog1.SelectedPath=Environment.GetFolderPath(Environment.SpecialFolder.MyMusic);}AddFiles();}}privatevoidtoolStripButton1_Click(objectsender,EventArgse){if(this.folderBrowserDialog1.ShowDialog()==DialogResult.OK){AddFiles();}}privatevoidtoolStripButton2_Click(objectsender,EventArgse){if(this.openFileDialog1.ShowDialog()==DialogResult.OK){this.axWindowsMediaPlayer1.currentPlaylist.clear();listView1.Items.Clear();listView1.BeginUpdate();Class1lf=newClass1();string[]strFile=this.openFileDialog1.FileNames;for(inti=0;istrFile.Length;i++){ListViewItemlvi=lf.searchFile(strFile[i]);lvi.SubItems[0].Text=(listView1.Items.Count+1).ToString();this.axWindowsMediaPlayer1.currentPlaylist.appendItem(this.axWindowsMediaPlayer1.newMedia(lvi.SubItems[2].Text));this.listView1.Items.Add(lvi);}listView1.EndUpdate();}}privatevoidtimer1_Tick(objectsender,EventArgse){System.Randomrdm=newRandom(unchecked((int)DateTime.Now.Ticks));switch(this.axWindowsMediaPlayer1.playState){caseWMPLib.WMPPlayState.wmppsTransitioning:caseWMPLib.WMPPlayState.wmppsPlaying:intindex=0;while(indexthis.axWindowsMediaPlayer1.currentPlaylist.count){intselectnum=0;if(顺3序ò播¥放?ToolStripMenuItem.Checked)selectnum=1;elseif(单蹋?曲ú循-环·ToolStripMenuItem.Checked)selectnum=0;elseif(全?部?循-环·ToolStripMenuItem.Checked)selectnum=1;elseif(随?机ú播¥放?ToolStripMenuItem.Checked){selectnum=rdm.Next();}index=(index+selectnum)%this.axWindowsMediaPlayer1.currentPlaylist.count;if(this.axWindowsMediaPlayer1.currentMedia.get_isIdentical(this.axWindowsMediaPlayer1.currentPlaylist.get_Item(index))){//this.axWindowsMediaPlayer1.Ctlcontrols.playItem(this.axWindowsMediaPlayer1.currentPlaylist.get_Item(index));this.listView1.Items[index].Selected=true;this.listView1.Focus();this.listView1.Items[index].EnsureVisible();this.Text=this.listView1.Items[index].SubItems[1].Text;break;}}break;caseWMPLib.WMPPlayState.wmppsReady:this.axWindowsMediaPlayer1.Ctlcontrols.play();break;}}privatevoidlistView1_MouseDoubleClick(objectsender,MouseEventArgse){if(this.listView1.SelectedItems.Count0){intiSel=this.listView1.SelectedItems[0].Index;this.Text=this.listView1.SelectedItems[0].SubItems[1].Text.Trim();if(iSel=this.axWindowsMediaPlayer1.currentPlaylist.count){this.axWindowsMediaPlayer1.Ctlcontrols.playItem(this.axWindowsMediaPlayer1.currentPlaylist.get_Item(iSel));;}}}privatevoid播¥放??折?叠蘴ToolStripMenuItem_Click(objectsender,EventArgse){this.splitContainer1.Panel2Collapsed=!this.splitContainer1.Panel2Collapsed;if(this.splitContainer1.Panel2Collapsed){播¥放??折?叠蘴ToolStripMenuItem.Text=播¥放??展1开a;}else{播¥放??折?叠蘴ToolStripMenuItem.Text=播¥放??折?叠蘴;}}privatevoid打洙?开a文?件tToolStripMenuItem_Click(objectsender,EventArgse){toolStripButton2_Click(null,null);}privatevoid打洙?开a文?件t夹DToolStripMenuItem_Click(objectsender,EventArgse){toolStripButton1_Click(null,null);}privatevoidForm1_FormClosing(objectsender,FormClosingEventArgse){using(RegistryKeysubKey=Application.UserAppDataRegistry){subKey.SetValue(MyMedia,this.folderBrowserDialog1.SelectedPath);}}privatevoid删?除y所ù有瓺文?件tToolStripMenuItem_Click(objectsender,EventArgse){for(inti=0;ithis.listView1.Items.Count;i++){this.listView1.Items[i].Remove();}}privatevoid删?除y错洙?误ó文?件tToolStripMenuItem_Click(objectsender,EventArgse){for(inti=0;ithis.listView1.Items.Count;i++){if(!File.Exists(this.listView1.Items[i].SubItems[2].Text.Trim())){this.listView1.Items[i].Remove();}}for(inti=0;ithis.listView1.Items.Count;i++){this.listView1.Items[i].Text=Convert.ToString(i+1);}}privatevoid删?除y选?择?文?件tToolStripMenuItem_Click(objectsender,EventArgse){if(this.listView1.SelectedItems.Count0){inti=this.listView1.SelectedItems[0].Index;this.listView1.SelectedItems[0].Remove();}}privatevoid删?除y重?复′文?件tToolStripMenuItem_Click(objectsender,EventArgse){System.Collections.HashtablehasFile=newSystem.Collections.Hashtable();for(inti=0;ithis.listView1.Items.Count;i++){if(hasFile.Contains((object)this.listView1.Items[i].SubItems[1].Text.Trim())){this.listView1.Items[i].Remove();}else{hasFile.Add((object)this.list
本文标题:c#课程设计报告音乐播放器
链接地址:https://www.777doc.com/doc-4598326 .html