在好例子网,分享、交流、成长!
您当前所在位置:首页C# 开发实例C#语言基础 → 音乐播放器(炫酷风格)

音乐播放器(炫酷风格)

C#语言基础

下载此实例
  • 开发语言:C#
  • 实例大小:1.11M
  • 下载次数:37
  • 浏览次数:760
  • 发布时间:2015-09-24
  • 实例类别:C#语言基础
  • 发 布 人:820814272
  • 文件格式:.zip
  • 所需积分:3
 相关标签: 播放器 播放

实例介绍

【实例简介】

【实例截图】

【核心代码】

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Xml;
using System.IO;
using System.Threading;

namespace MusicPlay_美化_
{
    public partial class MainFrm : Form
    {
        public MainFrm()
        {
            InitializeComponent();
        }

        #region     //定义一些全局变量
        NotifyIcon notify = new NotifyIcon();  //定义托盘
        private string musicUrl=null;
        private bool playState=false;  //判断播放状态
        private bool listFrmShow = true;  //判断播放列表框是否显示
        private int selectedIndex;  //记录选择的索引
        private int playMode;  //记录播放模式
        private int startX, startY; //位置
        private int voiceX, voiceWidth;  //记录图片位置和宽
        private bool isLeftDown = false; //记录鼠标左键是否被按下
        private bool haveVoice = true;  //判断是否有声音
        private int oldValue;//记录声音滑块的Value;

        #endregion

        #region//鼠标移动时图片变换事件
        private void picClose_MouseMove(object sender, MouseEventArgs e)
        {
            picClose.Image = global::MusicPlay_美化_.Properties.Resources.close_muose_in;
        }

        private void picClose_MouseLeave(object sender, EventArgs e)
        {
            picClose.Image = global::MusicPlay_美化_.Properties.Resources.close_muose_out;
        }

        private void picMiniMode_MouseMove(object sender, MouseEventArgs e)
        {
            picMiniMode.Image = global::MusicPlay_美化_.Properties.Resources.minimode_muose_in;
        }

        private void picMiniMode_MouseLeave(object sender, EventArgs e)
        {
            picMiniMode.Image = global::MusicPlay_美化_.Properties.Resources.minimode_muose_out;
        }

        private void picMiniSize_MouseMove(object sender, MouseEventArgs e)
        {
            picMiniSize.Image = global::MusicPlay_美化_.Properties.Resources.minimize_mouse_in;
        }

        private void picMiniSize_MouseLeave(object sender, EventArgs e)
        {
            picMiniSize.Image = global::MusicPlay_美化_.Properties.Resources.minimize_mouse_out;
        }

        private void picVoice_MouseMove(object sender, MouseEventArgs e)
        {
            picVoice.Image = global::MusicPlay_美化_.Properties.Resources.voice_mouse_in;
        }

        private void picVoice_MouseLeave(object sender, EventArgs e)
        {
            if (haveVoice == true)
            {
                picVoice.Image = global::MusicPlay_美化_.Properties.Resources.voice_mouse_out;
            }
            else
            {
                picVoice.Image = global::MusicPlay_美化_.Properties.Resources.voice_mouse_in;
            }
        }

        private void picPre_MouseMove(object sender, MouseEventArgs e)
        {
            picPre.Image = global::MusicPlay_美化_.Properties.Resources.prev_mouse_in;
        }

        private void picPre_MouseLeave(object sender, EventArgs e)
        {
            picPre.Image = global::MusicPlay_美化_.Properties.Resources.prev_mouse_out;
        }

        private void picPlayPause_MouseMove(object sender, MouseEventArgs e)
        {
            if (playState == false)
            {
                picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.play_muose_in;
            }
            else
            {
                picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.pause_mouse_in;
            }
        }

        private void picPlayPause_MouseLeave(object sender, EventArgs e)
        {
            if (playState == false)
            {
                picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.play_muose_out;
            }
            else
            {
                picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.pause_mouse_out;
            }
        }

        private void picStop_MouseMove(object sender, MouseEventArgs e)
        {
            picStop.Image = global::MusicPlay_美化_.Properties.Resources.stop_muose_in;
        }

        private void picStop_MouseLeave(object sender, EventArgs e)
        {
            picStop.Image = global::MusicPlay_美化_.Properties.Resources.stop_muose_out;
        }

        private void picNext_MouseMove(object sender, MouseEventArgs e)
        {
            picNext.Image = global::MusicPlay_美化_.Properties.Resources.next_muose_in;
        }

        private void picNext_MouseLeave(object sender, EventArgs e)
        {
            picNext.Image = global::MusicPlay_美化_.Properties.Resources.next_muose_out;
        }

        private void picOpen_MouseMove(object sender, MouseEventArgs e)
        {
            picOpen.Image = global::MusicPlay_美化_.Properties.Resources.open_muose_in;
        }

        private void picOpen_MouseLeave(object sender, EventArgs e)
        {
            picOpen.Image = global::MusicPlay_美化_.Properties.Resources.open_muose_out;
        }

        private void picAbout_MouseMove(object sender, MouseEventArgs e)
        {
            picAbout.Image = global::MusicPlay_美化_.Properties.Resources.About_mouse_in;
        }

        private void picAbout_MouseLeave(object sender, EventArgs e)
        {
            picAbout.Image = global::MusicPlay_美化_.Properties.Resources.About_mouse_out;
        }

        private void picPlayList_MouseMove(object sender, MouseEventArgs e)
        {
            picPlayList.Image = global::MusicPlay_美化_.Properties.Resources.playlist_mouse_in;
        }

        private void picPlayList_MouseLeave(object sender, EventArgs e)
        {
            picPlayList.Image = global::MusicPlay_美化_.Properties.Resources.playlist_mouse_out;
        }

        private void picEQ_MouseMove(object sender, MouseEventArgs e)
        {
            picEQ.Image = global::MusicPlay_美化_.Properties.Resources.equalizer_mouse_in;
        }

        private void picEQ_MouseLeave(object sender, EventArgs e)
        {
            picEQ.Image = global::MusicPlay_美化_.Properties.Resources.equalizer_mouse_out;
        }

        private void picLrc_MouseMove(object sender, MouseEventArgs e)
        {
            picLrc.Image = global::MusicPlay_美化_.Properties.Resources.lyric_mouse_in;
        }

        private void picLrc_MouseLeave(object sender, EventArgs e)
        {
            picLrc.Image = global::MusicPlay_美化_.Properties.Resources.lyric_mouse_out;
        }

        private void 添加ToolStripMenuItem_MouseMove(object sender, MouseEventArgs e)
        {
            添加ToolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.add_mouse_in;
        }

        private void 添加ToolStripMenuItem_MouseLeave(object sender, EventArgs e)
        {
            添加ToolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.add_mouse_out;
        }

        private void 删除toolStripMenuItem_MouseMove(object sender, MouseEventArgs e)
        {
            删除toolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.sub_mouse_in;
        }

        private void 删除toolStripMenuItem_MouseLeave(object sender, EventArgs e)
        {
            删除toolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.sub_mouse_out;
        }

        private void 列表ToolStripMenuItem_MouseMove(object sender, MouseEventArgs e)
        {
            列表ToolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.list_mouse_in;
        }

        private void 列表ToolStripMenuItem_MouseLeave(object sender, EventArgs e)
        {
            列表ToolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.list_mouse_out;
        }

        private void 查找ToolStripMenuItem_MouseMove(object sender, MouseEventArgs e)
        {
            查找ToolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.search_mouse_in;
        }

        private void 查找ToolStripMenuItem_MouseLeave(object sender, EventArgs e)
        {
            查找ToolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.search_mouse_out;
        }

        private void 模式ToolStripMenuItem_MouseMove(object sender, MouseEventArgs e)
        {
            模式ToolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.moshi_mouse_in;

        }

        private void 模式ToolStripMenuItem_MouseLeave(object sender, EventArgs e)
        {
            模式ToolStripMenuItem.Image = global::MusicPlay_美化_.Properties.Resources.moshi_mouse_out;
        }
        #endregion

        #region  //各控件事件
        private void MainFrm_Load(object sender, EventArgs e)  //窗体启动加载事件
        {
            playMode = 3;  //默认的播放模式为循序播放
            WindowsMediaPlayer.settings.volume = 50;  //设置声音大小,int 0 ~ 100
            trackBarVoice.Value = 6; //初始值
            oldValue = trackBarVoice.Value;  //记录原来的值
            voiceX = picVoiceCover.Location.X;  //记录图片位置
            voiceWidth = picVoiceCover.Size.Width;  //记录图片的宽
            listBox1.ContextMenuStrip = contextMenuStripPlaylist;  //右击播放列表时显示菜单
            //读取播放列表
            if (File.Exists(System.Windows.Forms.Application.StartupPath   "\\PlayList.xml"))    //如果播放列表存在,读入播放列表
            {                                                                                  //注意播放列表的路径
                LoadXml();  //调用函数,
            }
        }

        private void MainFrm_MouseDown(object sender, MouseEventArgs e)  //鼠标按下
        {
            if (e.Button == MouseButtons.Left)  //按下做键
            {
                isLeftDown = true;  //为真
                startX = e.X;  //记录X,Y值
                startY = e.Y;
            }
        }

        private void MainFrm_MouseMove(object sender, MouseEventArgs e)  //移动窗体 鼠标移动
        {
            if (isLeftDown == true)  //只有鼠标左键按下时
            {
                this.Location = new Point(Control.MousePosition.X - startX, Control.MousePosition.Y - startY);  //窗体移动
            }
        }

        private void MainFrm_MouseUp(object sender, MouseEventArgs e)  //松开鼠标
        {
            if (e.Button == MouseButtons.Left)
            {
                isLeftDown = false;  //此时为假
            }
        }

        private void MainFrm_Click(object sender, EventArgs e)  //窗体单击
        {
            trackBarVoice.Focus();  //单击窗体聚焦
        }
        private void picClose_Click(object sender, EventArgs e)  //退出
        {
            this.Close();
        }

        private void picMiniSize_Click(object sender, EventArgs e)  //最小化事件
        {
            WindowState = FormWindowState.Minimized;
            this.Visible = false;
            
        }

        private void picVoice_Click(object sender, EventArgs e)  //设置静音
        {
            if (haveVoice == true)
            {
                haveVoice = false;
                WindowsMediaPlayer.settings.mute = true;   //静音
            }
            else
            {
                haveVoice = true;
                WindowsMediaPlayer.settings.mute = false;  //有声音
            }
        }

        private void picPre_Click(object sender, EventArgs e)  //前一首事件
        {
            selectedIndex = listBox1.SelectedIndex - 1;    //给当前选择的选项索引-1;
            if (selectedIndex > -1)
            {
                picJindu.Width = 0;  //设置进度条宽度为0
                timerJindu.Enabled = false; //暂时不可用
                listBox1.SetSelected(selectedIndex, true);     //改变listbox选择的项
                listBox1SelectedIndexChanged();  // 调用函数
            }
        }

        private void picPlayPause_Click(object sender, EventArgs e)  //暂停/开始事件
        {
            if (playState == true)
            {
                WindowsMediaPlayer.Ctlcontrols.pause();
                picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.play_muose_out;  //改变图标
                playState = false;  //状态改变
            }
            else
            {
                WindowsMediaPlayer.Ctlcontrols.play();
                picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.pause_mouse_out;  //改变图标
                playState = true;  //状态改变
            }
        }

        private void picStop_Click(object sender, EventArgs e)  //停止
        {
            WindowsMediaPlayer.Ctlcontrols.stop();   //停止播放 
            picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.play_muose_out;  //改变图标
            playState = false;  //状态改变
            timer1.Enabled = false;  //停止计时
            lblPlayState.Text = "状态:停止";  //改变text
            lbShengdao.Text = "声道";
            lblCurrentTime.Text = "00:00";
        }

        private void picNext_Click(object sender, EventArgs e)  //下一首
        {
            selectedIndex = listBox1.SelectedIndex   1;    //给当前选择的选项索引 1;
            if (selectedIndex < (listBox1.Items.Count))
            {
                picJindu.Width = 0;  //设置进度条宽度为0
                timerJindu.Enabled = false; //暂时不可用
                listBox1.SetSelected(selectedIndex, true);     //改变listbox选择的项
                listBox1SelectedIndexChanged();  // 调用函数
            }
        }

        private void picPlayList_Click(object sender, EventArgs e)  //显示/关闭播放列表
        {
            if (listFrmShow == false)
            {
                this.Height = 295;   //关闭列表框
                listFrmShow = true;
            }
            else
            {
                this.Height = 144;  //显示列表框
                listFrmShow=false;
            }
        }

        private void picAbout_Click(object sender, EventArgs e)  //显示说明
        {
            About frm = new About();
            frm.Show();
        }

        private void 文件ToolStripMenuItem_Click(object sender, EventArgs e)  //打开文件
        {
            xmlEvent.WriteToXmlFromFile();  //直接调用方法
            listBox1.Items.Clear();  //先把原来信息清除掉后再加载
            LoadXml();  //写完之后直接加载XML到播放列表中
        }

        private void 文件夹ToolStripMenuItem_Click(object sender, EventArgs e)  //打开文件夹
        {
            xmlEvent.WriteToXmlFromDir();  //直接调用方法
            listBox1.Items.Clear();  //先把原来信息清除掉后再加载
            LoadXml();  //写完之后直接加载XML到播放列表中
        }

        private void 选中文件ToolStripMenuItem_Click(object sender, EventArgs e)  //删除选中文件
        {
            try
            {
                xmlEvent.removeInfo(listBox1.SelectedItem.ToString());
                listBox1.Items.RemoveAt(listBox1.SelectedIndex);  //删除选定的项
            }
            catch{ }
        }     

        private void 全部删除ToolStripMenuItem_Click_1(object sender, EventArgs e)  //全部删除
        {
            listBox1.Items.Clear();  //清除listbox中全部项
            File.Delete(System.Windows.Forms.Application.StartupPath   "\\PlayList.xml");  //删除播放列表
        }

        private void 新建列表ToolStripMenuItem_Click(object sender, EventArgs e)  //新建列表(为写)
        {
            MessageBox.Show("不好意思,程序未开发", "呵呵", MessageBoxButtons.OK, MessageBoxIcon.Asterisk);
        }


        private void 单曲播放ToolStripMenuItem_Click(object sender, EventArgs e)  //单曲播放
        {
            单曲播放ToolStripMenuItem1.Checked = true;
            单曲循环ToolStripMenuItem1.Checked = false;
            顺序播放ToolStripMenuItem1.Checked = false;
            循环播放ToolStripMenuItem1.Checked = false;
            playMode = 1;  //1代表单曲播放
        }

        private void 单曲循环ToolStripMenuItem_Click(object sender, EventArgs e)  //单曲循环
        {
            单曲播放ToolStripMenuItem1.Checked = false;
            单曲循环ToolStripMenuItem1.Checked = true;
            顺序播放ToolStripMenuItem1.Checked = false;
            循环播放ToolStripMenuItem1.Checked = false;
            playMode = 2;  //2代表单曲循环
        }

        private void 循序播放ToolStripMenuItem_Click(object sender, EventArgs e)  //循序播放
        {
            单曲播放ToolStripMenuItem1.Checked = false;
            单曲循环ToolStripMenuItem1.Checked = false;
            顺序播放ToolStripMenuItem1.Checked = true;
            循环播放ToolStripMenuItem1.Checked = false;
            playMode = 3;  //3代表循环播放

        }

        private void 循环播放ToolStripMenuItem_Click(object sender, EventArgs e)  //循环播放
        {
            单曲播放ToolStripMenuItem1.Checked = false;
            单曲循环ToolStripMenuItem1.Checked = false;
            顺序播放ToolStripMenuItem1.Checked = false;
            循环播放ToolStripMenuItem1.Checked = true;
            playMode = 4;  //4代表循环播放
        }   

        private void listBox1_DoubleClick(object sender, EventArgs e)
        {
            try
            {
                musicUrl = xmlEvent.getURL(listBox1.SelectedItem.ToString());  //从xml中查找位置
                WindowsMediaPlayer.URL = musicUrl;
                WindowsMediaPlayer.Ctlcontrols.play();
                picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.pause_mouse_out;  //改变图标
                playState = true;  //状态改变
                timer1.Enabled = true;  //时钟监视当前播放的状态
                picJindu.Width = 0;  //设置进度条宽度为0
            }
            catch { }
        }  //listbox双击

        private void trackBarVoice_Scroll(object sender, EventArgs e)  //控制声音
        {
            int newValue = trackBarVoice.Value;  //记录当前声音滑块的位置
            if (oldValue < newValue)    //如果向右滑
            {
                WindowsMediaPlayer.settings.volume  = 10;  //增加音量
                voiceX  = 5;
                voiceWidth -= 5;
                picVoiceCover.Location = new System.Drawing.Point(voiceX, 63);  //改变图片位置
                picVoiceCover.Size = new System.Drawing.Size(voiceWidth, 11);  //改变图片大
            }
            if (oldValue > newValue)  //如果向左滑
            {
                WindowsMediaPlayer.settings.volume -= 10;  //降低音量
                voiceX -= 5;
                voiceWidth  = 5;
                picVoiceCover.Location = new System.Drawing.Point(voiceX, 63);
                picVoiceCover.Size = new System.Drawing.Size(voiceWidth, 11);
                if (voiceX <= 151)
                {
                    picVoiceCover.Location = new System.Drawing.Point(146, 63);
                    picVoiceCover.Size = new System.Drawing.Size(28, 11);
                    WindowsMediaPlayer.settings.volume = 0;
                }
            }
            oldValue = trackBarVoice.Value;   //重新给oldValue赋值
        }

        private void WindowsMediaPlayer_PlayStateChange(object sender, AxWMPLib._WMPOCXEvents_PlayStateChangeEvent e)  //windows media状态改变
        {
            //利用PlayStateChange事件来实现由一曲到下一曲的替换,但是在响应PlayStateChange
            //事件的时候直接改变Player的url无法让它直接播放下一曲,可添加一个timer来解决
            if (WindowsMediaPlayer.playState == WMPLib.WMPPlayState.wmppsMediaEnded)  //当歌曲结束时
            {
                timerMode.Enabled = true;  // 激活timerMode
                picJindu.Width = 0;  //设置进度条宽度为0
                timerJindu.Enabled = false; //暂时不可用
            }
        }  

        private void timer1_Tick(object sender, EventArgs e)
        {
            lblCurrentTime.Text = WindowsMediaPlayer.Ctlcontrols.currentPositionString;
            //lblName.Text = "当前播放:" listBox1.SelectedItem.ToString();
            //this.Text = "当前播放:"   listBox1.SelectedItem.ToString();  //改变窗体的显示
            if (WindowsMediaPlayer.currentMedia.duration > 0)  //由于歌曲交换期间,WindowsMediaPlayer.currentMedia.duration会获取值为0
            {
                double musicLong = WindowsMediaPlayer.currentMedia.duration;  //获取歌曲的时间长度
                timerJindu.Interval = (int)((musicLong / 162) * 1000);  //获取timerJinfu的间隔事件,类似于求速度
                lbShengdao.Text = "立体声";
                lblName.Text = "当前播放:"   WindowsMediaPlayer.currentMedia.name;
                this.Text = "当前播放:"   WindowsMediaPlayer.currentMedia.name;  //改变窗体的显示
                if (playState == true)
                {
                    lblPlayState.Text = "状态:播放";
                    timerJindu.Enabled = true;
                }
                else
                {
                    lblPlayState.Text = "状态:暂停";
                    timerJindu.Enabled = false;
                }
            }
        }        

        private void timerMode_Tick(object sender, EventArgs e)
        {
            selectedIndex = listBox1.SelectedIndex;  //获取当前播放的item
            switch (playMode)
            {
                case 1: danQuBoFang(); break;
                case 2: danQuXunhuan(); break;
                case 3: xunXuBoFang(); break;
                case 4: xunxuXunHuan(); break;
                default: MessageBox.Show("位置错误,请重新运行程序", "警告", MessageBoxButtons.OK, MessageBoxIcon.Error); this.Close(); break;
            }
            timerMode.Enabled = false;    //设置为不可用,知道下一首个播放完毕
        }

        private void timerJindu_Tick(object sender, EventArgs e)
        {
            if(picJindu.Width<=162)   
              picJindu.Width  ;   //宽度自加
        }

        private void 还原ToolStripMenuItem_Click(object sender, EventArgs e)  //显示窗体
        {
            this.Show();
            this.WindowState = FormWindowState.Normal;
            notify.Visible = false;  //隐藏托盘程序中的图标 
        }

        private void 退出ToolStripMenuItem_Click(object sender, EventArgs e)  //退出
        {
            notify.Visible = false;
            this.Close();
        }
#endregion

        #region     //自定义方法
      

        private void notifyClick(object sender, EventArgs e)  //鼠标双击托盘事件
        {
            this.Show();
            this.WindowState = FormWindowState.Normal;
            notify.Visible = false;  //隐藏托盘程序中的图标     
        }

        private void listBox1SelectedIndexChanged()  //listboxitem改变函数,自己写的函数
        {
            try
            {
                musicUrl = xmlEvent.getURL(listBox1.SelectedItem.ToString());  //从xml中查找位置
                WindowsMediaPlayer.URL = musicUrl;
                WindowsMediaPlayer.Ctlcontrols.play();   //播放歌曲
                picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.pause_mouse_out;  //改变图标
                playState = true;  //状态改变
                timer1.Enabled = true;//开始计时
            }
            catch { }
        }

        private void LoadXml()  //加载XML文件
        {
            XmlReader reader;
            reader = new XmlTextReader(System.Windows.Forms.Application.StartupPath "\\PlayList.xml");
            try
            {

                while (reader.Read())
                {
                    if (reader.NodeType == XmlNodeType.Element)
                    {
                        if (reader.Name == "MusicName")
                        {
                            this.listBox1.Items.Add(reader.ReadElementString().Trim());
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "警告", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            finally
            {
                if (reader != null)
                    reader.Close();
                if (listBox1.Items.Count != 0)  //只有当列表中存在时才显示
                {
                    listBox1.SetSelected(0, true);  //设置默认的选择项
                    lblName.Text = "当前播放:"   listBox1.SelectedItem.ToString();  //显示选中歌曲名字
                    this.Text = "当前播放:"   listBox1.SelectedItem.ToString();
                }
            }
        }

        //播放模式方法
        private void danQuBoFang()   //单曲播放
        {
            WindowsMediaPlayer.Ctlcontrols.stop();   //停止播放 
            picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.play_muose_out;  //改变图标
            playState = false;  //状态改变
            timer1.Enabled = false;  //停止计时
            lblPlayState.Text = "状态:停止";  //改变text
            lbShengdao.Text = "声道";
            lblCurrentTime.Text = "00:00";
        }

        private void danQuXunhuan()  //单曲循环
        {
            musicUrl = xmlEvent.getURL(listBox1.SelectedItem.ToString());  //从xml中查找位置
            WindowsMediaPlayer.URL = musicUrl;
            WindowsMediaPlayer.Ctlcontrols.play();  //播放
        }

        private void xunXuBoFang()  //循序播放
        {
            if (selectedIndex < (listBox1.Items.Count - 1))
            {
                selectedIndex = listBox1.SelectedIndex   1;    //给当前选择的选项索引 1;
                listBox1.SetSelected(selectedIndex, true);     //改变listbox选择的项
                listBox1SelectedIndexChanged();  // 调用函数
            }
            else
            {
                WindowsMediaPlayer.Ctlcontrols.stop();   //停止播放 
                picPlayPause.Image = global::MusicPlay_美化_.Properties.Resources.play_muose_out;  //改变图标
                playState = false;  //状态改变
                timer1.Enabled = false;  //停止计时
                lblPlayState.Text = "状态:停止";  //改变text
                lbShengdao.Text = "声道";
                lblCurrentTime.Text = "00:00";
                timerJindu.Enabled = false; 
            }

        }

        private void xunxuXunHuan()  //循环播放
        {
            if (selectedIndex == (listBox1.Items.Count - 1))  //如果当前播放的歌曲在列表末位
                selectedIndex = 0;  //索引移到列表头
            else
                selectedIndex = listBox1.SelectedIndex   1;    //给当前选择的选项索引 1;
            listBox1.SetSelected(selectedIndex, true);     //改变listbox选择的项
            listBox1SelectedIndexChanged();  // 调用函数
        }
        #endregion        
    }
}

标签: 播放器 播放

实例下载地址

音乐播放器(炫酷风格)

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警