WinForm C#操作类 实现MP3播放

      在做数据库存取图片时,有人提出想用数据库存取mp3的设想,我想在回答这个问题时,还是先看看怎样用C#实现WINFORM下的MP3的播放吧!

    

      1、首先打开vs2008,点[文件]->[新建]->[项目]->[Windows]->[Windows 窗体应用程序],输入[名称]、[位置]、[解决方案名称],并按确定。

 

      2、右键点[解决方案资源管理器]下的[项目名称]->[添加]->[新建项...],点[Visaul C#项]->[代码]->[类],输入类[名称]->[添加]。

 

 

 

      3、Mp3Player.cs的文件内容如下(粗斜体+大号字为输入的内容):

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;

namespace Mp3Player
{
    class Mp3Player
    {
        #region   -定义属性-

        /* extern修饰符用于声明在外部实现的方法, extern 修饰符的常见用法是在使用Interop 服务调入非托管代码时与 DllImport 属性一起使用;在这种情况下,该方法还必须声明为 static*/

        [DllImport("winmm.dll")]
        static extern Int32 mciSendString(String command, StringBuilder buffer, Int32 bufferSize, IntPtr hwndCallback);
        private string m_musicPath = "";
        private IntPtr m_Handle;

        #endregion


        #region -定义构造函数-

        public Mp3Player(string musicPath, IntPtr Handle)
        {
            m_musicPath = musicPath;
            m_Handle = Handle;
        }

        #endregion


        #region - 播放音乐 -
        public void Open(string path)
        {
            if (path != "")
            {
                try
                {
                    mciSendString("open " + path + " alias media", null, 0, m_Handle);
                    mciSendString("play media", null, 0, m_Handle);
                }
                catch (Exception)
                {

                }
            }
        }

        public void Open()
        {
            Open(m_musicPath);
        }
        #endregion

        #region - 停止音乐播放 -
        void CloseMedia()
        {
            try
            {
                mciSendString("close all", null, 0, m_Handle);
            }
            catch (Exception)
            {
            }
        }
        #endregion
    }
}

 

4、在Form1chuang体上入一个OpenFileDialog控件和一个button控件,双击BUTTON1,并输入(粗斜体+大号字为输入的内容)如下内容:

        private void button1_Click(object sender, EventArgs e)
        {
            if (this.openFileDialog1.ShowDialog() == DialogResult.OK)
            {
                Mp3Player mp3 = new Mp3Player(openFileDialog1.FileName, Handle);
                mp3.Open();
            }

        }

 

 

5、写到这里就结束了,可以运行一下试试,结果PASS通过。

你可能感兴趣的:(C#)