




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、文件:主要是提供打开文件夹和打开歌曲功能文件列表:主要是提供打开之前的播放列表、保证现在正在播放的列表,清空现在播放的列表编辑:可以实现上一曲、下一曲、暂停等功能。整个程序还提供右键功能using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.IO;namespace MP3 p
2、ublic partial class PLAYER : Form bool bo = true; public PLAYER()/初始界面 InitializeComponent(); comboBox1.SelectedIndex = 0; axWindowsMediaPlayer1.currentPlaylist.clear(); listView1.Items.Clear(); string name = "C:/PlayList.txt" FileInfo file = new FileInfo(name); if (file.Exists) using (Fil
3、eStream fi = new FileStream(name, FileMode.Open) using (StreamReader Reader = new StreamReader(fi) string m = Reader.ReadLine(); while (m != null) WMPLib.IWMPMedia IWM = axWindowsMediaPlayer1.newMedia(m); axWindowsMediaPlayer1.currentPlaylist.appendItem(IWM); axWindowsMediaPlayer1.Ctlcontrols.play()
4、; ListViewItem list = new ListViewItem(); list.Text = (listView1.Items.Count + 1).ToString(); list.SubItems.Add(Path.GetFileName(m); list.SubItems.Add(m); listView1.Items.Add(list); m = Reader.ReadLine(); else huode(); public void huode()/播放同步 if (listView1.Items.Count!=0) string str = axWindowsMedi
5、aPlayer1.currentMedia.sourceURL; for (int i = 0; i < listView1.Items.Count; i+) string sp = listView1.Itemsi.SubItems2.Text; if (sp = str) listView1.Itemsi.Selected = true; listView1.Select(); else listView1.Itemsi.Selected = false; listView1.Select(); else public void openfile()/以打开多少歌曲的方式进行打开 O
6、penFileDialog open = new OpenFileDialog(); open.Multiselect = true; open.Filter = "MP3(*.mp3)|*.mp3|MP4(*.mp4)|*.mp4" open.InitialDirectory = "g:" if (open.ShowDialog() = DialogResult.OK) string st = open.FileNames; foreach (string s in st) int leng = 0; foreach (ListViewItem lis
7、 in listView1.Items) if (s = lis.SubItems2.Text) leng+; if (leng = 0) WMPLib.IWMPMedia media = this.axWindowsMediaPlayer1.newMedia(s); axWindowsMediaPlayer1.currentPlaylist.appendItem(media); int mp = axWindowsMediaPlayer1.currentPlaylist.count; listInfo(mp); axWindowsMediaPlayer1.Ctlcontrols.play()
8、; AddList(); huode(); bo = true; public void openDir()/打开文件夹方式打开歌曲 FolderBrowserDialog folder = new FolderBrowserDialog(); if (folder.ShowDialog() = DialogResult.OK) DirectoryInfo dir = new DirectoryInfo(folder.SelectedPath); FileInfo filein = dir.GetFiles("*.mp3"); if (filein.Length = 0)
9、MessageBox.Show("该文件夹没有mp3格式的文件", "请注意"); else foreach (FileInfo f in filein) int leng = 0; foreach (ListViewItem lis in listView1.Items) if (f.FullName = lis.SubItems2.Text) leng+; if (leng = 0) WMPLib.IWMPMedia media = this.axWindowsMediaPlayer1.newMedia(f.FullName); axWindowsM
10、ediaPlayer1.currentPlaylist.appendItem(media); int m = axWindowsMediaPlayer1.currentPlaylist.count; listInfo(m); axWindowsMediaPlayer1.Ctlcontrols.play(); AddList(); huode(); bo = true; public void listInfo(int m)/想ListView1中添加数据 listView1.Items.Clear(); for (int i = 0; i < m; i+) ListViewItem li
11、st = new ListViewItem(); list.Text = (listView1.Items.Count + 1).ToString(); list.SubItems.Add(axWindowsMediaPlayer1.currentPlaylist.get_Item(i).name); list.SubItems.Add(axWindowsMediaPlayer1.currentPlaylist.get_Item(i).sourceURL); listView1.Items.Add(list); public void show()/模块提示信息 MessageBox.Show
12、("该模块还没有开放"); public void AddList()/添加最后一个播放列表 string name="C:/PlayList.txt" using (FileStream fi = new FileStream(name, FileMode.Create, FileAccess.Write) using (StreamWriter write = new StreamWriter(fi) for (int i = 0; i < listView1.Items.Count; i+) string st = listView1.Ite
13、msi.SubItems2.Text; write.WriteLine(st); private void Close_Click(object sender, EventArgs e)/关闭系统 Close(); private void OpenDic_Click(object sender, EventArgs e)/打开文件 if (listView1.Items.Count != 0) if (MessageBox.Show("你要清空列表里面的歌曲吗", "提示", MessageBoxButtons.YesNo, MessageBoxIco
14、n.Error) = DialogResult.Yes) bo = false; axWindowsMediaPlayer1.currentPlaylist.clear(); listView1.Items.Clear(); openfile(); else bo = false; openfile(); else bo = false; axWindowsMediaPlayer1.currentPlaylist.clear(); openfile(); private void OpenDir_Click(object sender, EventArgs e)/打开文件夹 if (listV
15、iew1.Items.Count != 0) if (MessageBox.Show("你要清空播放列表吗", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Error) = DialogResult.Yes) bo = false; axWindowsMediaPlayer1.currentPlaylist.clear(); listView1.Items.Clear(); openDir(); else bo = false; openDir(); else bo = false; openDir();
16、private void OpenList_Click(object sender, EventArgs e)/打开列表 bo = false; axWindowsMediaPlayer1.currentPlaylist.clear(); listView1.Items.Clear(); OpenFileDialog open=new OpenFileDialog(); open.InitialDirectory="g:" open.Filter="文件列表|*.list" if(open.ShowDialog()=DialogResult.OK) us
17、ing (FileStream fi = new FileStream(open.FileName, FileMode.Open) using (StreamReader Reader = new StreamReader(fi) string line = Reader.ReadLine(); while(line!=null) ListViewItem listit = new ListViewItem(); listit.Text = (listView1.Items.Count + 1).ToString(); listit.SubItems.Add(Path.GetFileName(
18、line); listit.SubItems.Add(line); listView1.Items.Add(listit); line = Reader.ReadLine(); WMPLib.IWMPMedia mp = axWindowsMediaPlayer1.newMedia(line); axWindowsMediaPlayer1.currentPlaylist.appendItem(mp); axWindowsMediaPlayer1.Ctlcontrols.play(); AddList(); bo = true; private void saveList_Click(objec
19、t sender, EventArgs e)/保存文件 if (listView1.Items.Count = 0) MessageBox.Show("播放列表中还没有歌曲"); else bo = false; SaveFileDialog save = new SaveFileDialog(); save.Filter = "文件列表|*.list" if (save.ShowDialog() = DialogResult.OK) using (FileStream fi = new FileStream(save.FileName, FileMod
20、e.Create, FileAccess.Write) using (StreamWriter write = new StreamWriter(fi) for (int i = 0; i < listView1.Items.Count; i+) string st = listView1.Itemsi.SubItems2.Text; write.WriteLine(st); AddList(); bo = true; private void CloseList_Click(object sender, EventArgs e)/清空播放列表 bo = false; if (Messa
21、geBox.Show("你确定要清空列表吗", "提示", MessageBoxButtons.YesNo) = DialogResult.Yes) this.axWindowsMediaPlayer1.currentPlaylist.clear();/清空播放器中的歌曲列表 listView1.Items.Clear(); AddList(); bo = true; private void PlayMp3_Click(object sender, EventArgs e)/播放歌曲 try int m = listView1.Items.Count;
22、 if (m = 0) MessageBox.Show("播放列表中还没有该控件", "提示"); else WMPLib.WMPPlayState wm = axWindowsMediaPlayer1.playState; if (wm != WMPLib.WMPPlayState.wmppsPlaying) axWindowsMediaPlayer1.Ctlcontrols.play(); else MessageBox.Show("当前的歌曲正处于播放状态"); catch (Exception ex) private void
23、 StopMp3_Click(object sender, EventArgs e)/暂停播放 try if (axWindowsMediaPlayer1.currentPlaylist.count = 0) MessageBox.Show("播放列表为空"); else WMPLib.WMPPlayState wm = axWindowsMediaPlayer1.playState; if (wm = WMPLib.WMPPlayState.wmppsPlaying) axWindowsMediaPlayer1.Ctlcontrols.pause(); else Mess
24、ageBox.Show("当前歌曲已经暂停或者停止播放了"); catch (Exception ex) private void Step_Click(object sender, EventArgs e)/停止播放 try if (axWindowsMediaPlayer1.currentPlaylist.count = 0) MessageBox.Show("播放列表为空"); else WMPLib.WMPPlayState wm = axWindowsMediaPlayer1.playState; if (wm = WMPLib.WMPPlay
25、State.wmppsPlaying) axWindowsMediaPlayer1.Ctlcontrols.stop(); else MessageBox.Show("当前歌曲已经暂停或者停止播放了"); catch private void help_Click(object sender, EventArgs e)/帮助窗口 HelpInfo he = new HelpInfo(); he.Show(); private void Up_Click(object sender, EventArgs e)/上一首 axWindowsMediaPlayer1.Ctlcont
26、rols.previous(); huode(); private void Down_Click(object sender, EventArgs e)/下一首 axWindowsMediaPlayer1.Ctlcontrols.next(); huode(); private void listView1_DoubleClick_1(object sender, EventArgs e)/将选择的列表中的歌曲添加到播放列表中去 try if (listView1.Items.Count != 0) int list = listView1.SelectedItems0.Index; WMP
27、Lib.IWMPMedia media = axWindowsMediaPlayer1.currentPlaylist.get_Item(list); axWindowsMediaPlayer1.Ctlcontrols.playItem(media); catch (Exception ex) private void ConOpenAdress_Click(object sender, EventArgs e)/打开列表 try if (listView1.Items.Count = 0) else int inter = listView1.SelectedItems0.Index; if
28、 (inter > listView1.Items.Count) string name = listView1.ItemslistView1.Items.Count.SubItems2.Text; else string st = listView1.SelectedItems0.SubItems2.Text; int str = st.LastIndexOf(''); string stt = st.Substring(0, str); string stfile = st.Substring(str + 2); System.Diagnostics.Process.
29、Start(stt, stfile); catch (Exception ex) private void Saveothre_ButtonClick(object sender, EventArgs e)/文件另存为 FolderBrowserDialog save = new FolderBrowserDialog(); if (save.ShowDialog() = DialogResult.OK) for (int i = 0; i < listView1.Items.Count; i+) string str = listView1.Itemsi.SubItems2.Text;
30、 string st = save.SelectedPath + Path.GetFileName(str); byte btye = new byte1024; int leng = 0; using (FileStream fi = new FileStream(str, FileMode.Open) using (FileStream fil = new FileStream(st, FileMode.Create) while (leng = fi.Read(btye, 0, 1024) != 0) fil.Write(btye, 0, i); /FileInfo fi = new F
31、ileInfo(str); /fi.CopyTo(save.SelectedPath + Path.GetFileName(str), true); save.Dispose(); public void delList()/删除选定歌曲的文件 int intsele = listView1.SelectedItems0.Index; listView1.Items.Remove(listView1.SelectedItems0); WMPLib.IWMPMedia mp3 = axWindowsMediaPlayer1.currentPlaylist.get_Item(intsele); a
32、xWindowsMediaPlayer1.currentPlaylist.removeItem(mp3); listView1.Items.Clear(); for (int i = 0; i < axWindowsMediaPlayer1.currentPlaylist.count; i+) string Str = axWindowsMediaPlayer1.currentPlaylist.get_Item(i).sourceURL; ListViewItem list = new ListViewItem(); list.Text = (listView1.Items.Count + 1).ToString(); list.SubItems.Add(Path.GetFileName(Str); list.SubItems.Add(
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广场工程用阀门采购招标条件3篇
- 干挂施工合同价款支付方式
- 忠诚与责任女婿的宣言3篇
- 如何写招标文件质疑函3篇
- 协议签订流程及批准表3篇
- 写字楼物业管理服务合同样本3篇
- 合伙人股权分配合同范本示例3篇
- 公证处委托书的格式及内容3篇
- 关于施工安全协议书范文3篇
- 同意房屋转租合同范本2篇
- 2024年内蒙古师范大学招聘事业编制人员考试真题
- (二模)2025年河南省五市高三第二次联考历史试卷(含答案)
- 飞行员劳动合同模板及条款
- 《劳动项目五:煮鸡蛋》(教案)-2024-2025学年人教版劳动三年级上册
- 第中西艺术时空对话 课件 2024-2025学年岭南美版(2024) 初中美术七年级下册
- 2025-2030检测设备行业行业风险投资发展分析及投资融资策略研究报告
- (三模)广西2025届高中毕业班4月份适应性测试 英语试卷(含答案解析)
- (四调)武汉市2025届高中毕业生四月调研考试 物理试卷(含答案)
- 中级财务会计课件第四章 金融资产学习资料
- 2025年济南市中区九年级中考数学一模考试试题(含答案)
- 中国印楝素市场调查报告
评论
0/150
提交评论