如何用C#做一个播放声音的文件?

awnu1988 2009-08-04 10:19:26
用C#的WINFORM做一个播放声音,或者音乐的一个小程序,应该怎么做,用什么控件做,急用...
...全文
404 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
awnu1988 2009-08-04
  • 打赏
  • 举报
回复
是提示第一个的FileName不在axMediaPlayer1里面有定义
awnu1988 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 20 楼 ujnmaomao 的回复:]
我来补充一下。。。。。。看来lz不大明白,你在工具箱添加Window Media Player控件后,在界面要有一个按钮来打开文件,和打开文件的控件OpenFileDialog,还要有一个播音乐的控件即添加的Window Media Player控件。然后你可以设置它的属性,比如显示或隐藏播放器等。

C# codeprivatevoid add_Click(object sender, System.EventArgs e)
{
OpenFileDialog openFileDialog1=new OpenFileDialog();
openFileDialog1.InitialDirectory="e:\\";//这个是打开文件窗口的默认位置。注意这里写路径时要用e:\\而不是e:\ openFileDialog1.AddExtension=true;
openFileDialog1.CheckFileExists=true;
openFileDialog1.CheckPathExists=true;
openFileDialog1.Filter="WAV文件 (*.wav)|*.wav|MP3文件 (*.mp3)|*.mp3|所有文件 (*.*)|*.*";
openFileDialog1.DefaultExt="*.mp3";if (openFileDialog1.ShowDialog()== DialogResult.OK)
{this.axMediaPlayer1.FileName= openFileDialog1.FileName;
}
}

这是按钮点击的代码。        openFileDialog1.Filter = "WAV文件 (*.wav)|*.wav|MP3文件 (*.mp3)|*.mp3|所有文件 (*.*)|*.*";此句是设置文件打开窗口显示可以打开文件的文件类型。
[/Quote]


我按照你的代码打了,可是为什么在这句this.axMediaPlayer1.FileName= openFileDialog1.FileName;提示我不包含FileName的定义呢?
ujnmaomao 2009-08-04
  • 打赏
  • 举报
回复
我来补充一下。。。。。。看来lz不大明白,你在工具箱添加Window Media Player控件后,在界面要有一个按钮来打开文件,和打开文件的控件OpenFileDialog,还要有一个播音乐的控件即添加的Window Media Player控件。然后你可以设置它的属性,比如显示或隐藏播放器等。


private void add_Click(object sender, System.EventArgs e)
{
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.InitialDirectory ="e:\\"; //这个是打开文件窗口的默认位置。注意这里写路径时要用e:\\而不是e:\
openFileDialog1.AddExtension = true;
openFileDialog1.CheckFileExists = true;
openFileDialog1.CheckPathExists = true;
openFileDialog1.Filter = "WAV文件 (*.wav)|*.wav|MP3文件 (*.mp3)|*.mp3|所有文件 (*.*)|*.*";
openFileDialog1.DefaultExt = "*.mp3";
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
this.axMediaPlayer1.FileName = openFileDialog1.FileName;
}
}



这是按钮点击的代码。 openFileDialog1.Filter = "WAV文件 (*.wav)|*.wav|MP3文件 (*.mp3)|*.mp3|所有文件 (*.*)|*.*";此句是设置文件打开窗口显示可以打开文件的文件类型。
闪亮的人生 2009-08-04
  • 打赏
  • 举报
回复
ofDialog.Filter = "VCD文件(*.dat)|*.dat|Audio文件(*.avi)|*.avi|WAV文件 (*.wav)|*.wav|MP3文件 (*.mp3)|*.mp3|所有文件 (*.*)|*.*";
可选mp3
xie_yanke 2009-08-04
  • 打赏
  • 举报
回复
winform + Flash也可以。:D
wanabe 2009-08-04
  • 打赏
  • 举报
回复
能播mp3的
lyla105 2009-08-04
  • 打赏
  • 举报
回复

在属性栏中设置好此控件的一些属性,为了方便,把AutoStart设置成为true,只要FileName被设置,则文件将会自动播放。
怎么找不到AutoStart呢,是电脑上软件的问题么?
awnu1988 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 crystalkt 的回复:]
引用 9 楼 awnu1988 的回复:
如果有知道在COM组件里的那个WindowsMediaPlayer控件如何使用的告诉我下,我弄完了但是不知道如何使它播放文件

添加一个打开文件的菜单或者按钮,onclick事件里面调用OpenFile()
    //打开文件
    private void OpenFile()
    {
        OpenFileDialog ofDialog = new OpenFileDialog();
        ofDialog.AddExtension = true;
        ofDialog.CheckFileExists = true;
        ofDialog.CheckPathExists = true;
        ofDialog.Filter = "VCD文件(*.dat)|*.dat|Audio文件(*.avi)|*.avi|WAV文件 (*.wav)|*.wav|MP3文件 (*.mp3)|*.mp3|所有文件 (*.*)|*.*";
        ofDialog.DefaultExt = "*.mp3";
        if (ofDialog.ShowDialog() == DialogResult.OK)
        {
            this.axMediaPlayer1.FileName = ofDialog.FileName;
        }
    }

打开选择声音文件,选完就可以播放了
[/Quote]
用这个控件是不是能播放mp3格式的文件,文件位置是不是在ofDialog.Filter = "VCD文件(*.dat)|*.dat|Audio文件(*.avi)|*.avi|WAV文件 (*.wav)|*.wav|MP3文件 (*.mp3)|*.mp3|所有文件 (*.*)|*.*"; 这里面输入?
闪亮的人生 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 awnu1988 的回复:]
如果有知道在COM组件里的那个WindowsMediaPlayer控件如何使用的告诉我下,我弄完了但是不知道如何使它播放文件
[/Quote]
添加一个打开文件的菜单或者按钮,onclick事件里面调用OpenFile()
//打开文件
private void OpenFile()
{
OpenFileDialog ofDialog = new OpenFileDialog();
ofDialog.AddExtension = true;
ofDialog.CheckFileExists = true;
ofDialog.CheckPathExists = true;
ofDialog.Filter = "VCD文件(*.dat)|*.dat|Audio文件(*.avi)|*.avi|WAV文件 (*.wav)|*.wav|MP3文件 (*.mp3)|*.mp3|所有文件 (*.*)|*.*";
ofDialog.DefaultExt = "*.mp3";
if (ofDialog.ShowDialog() == DialogResult.OK)
{
this.axMediaPlayer1.FileName = ofDialog.FileName;
}
}

打开选择声音文件,选完就可以播放了
awnu1988 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 lyla105 的回复:]
自定义工具箱的窗口,在“COM 组件",怎么找不到呢?
[/Quote]
在菜单栏里的选择“工具”,里面有一个“选择工具箱项”,打开里面就有了
lyla105 2009-08-04
  • 打赏
  • 举报
回复
自定义工具箱的窗口,在“COM 组件",怎么找不到呢?
闪亮的人生 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 awnu1988 的回复:]
引用 7 楼 crystalkt 的回复:
        System.Media.SoundPlayer sp = new System.Media.SoundPlayer();
        sp.SoundLocation = ".wav文件路径"
        sp.Play();

不好意思,问一下,你这个代码只能播放.wav的文件么,还是其它的也能播放,比如MP3,WMA格式的..
[/Quote]
这个只能播放.wav
awnu1988 2009-08-04
  • 打赏
  • 举报
回复
如果有知道在COM组件里的那个WindowsMediaPlayer控件如何使用的告诉我下,我弄完了但是不知道如何使它播放文件
awnu1988 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 crystalkt 的回复:]
        System.Media.SoundPlayer sp = new System.Media.SoundPlayer();
        sp.SoundLocation = ".wav文件路径"
        sp.Play();
[/Quote]
不好意思,问一下,你这个代码只能播放.wav的文件么,还是其它的也能播放,比如MP3,WMA格式的..
闪亮的人生 2009-08-04
  • 打赏
  • 举报
回复
System.Media.SoundPlayer sp = new System.Media.SoundPlayer();
sp.SoundLocation = ".wav文件路径"
sp.Play();
awnu1988 2009-08-04
  • 打赏
  • 举报
回复
用WindowsMediaPlayer这个控件可以放音乐,那如何播放呢,还有有没有什么方法是可以直接用方法使声音播放出来,比如我看别说说的用什么System.Media.SoundPlayer这种类似的方法,有的话希望提供一下,最好有例子,麻烦大家了
awnu1988 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xie_yanke 的回复:]
System.Media.SoundPlayer
[/Quote]
能举一个例子么?
Deathsign 2009-08-04
  • 打赏
  • 举报
回复
建议装个 DIRECTX SDK···

添加引用 Microsoft.DirectX.DirectSound

然后使用AudioAndVideoPlayXXX 这个类。
只要本地有解码器都能播放

DEMO:

Audio audio=null;

在按钮事件中:

audio=new Audio("D:\xxx.mp3");
audio.Play();
就行……
简单好用

闪亮的人生 2009-08-04
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 xie_yanke 的回复:]
System.Media.SoundPlayer
[/Quote]
这个好像只能播放.wav的
xie_yanke 2009-08-04
  • 打赏
  • 举报
回复
System.Media.SoundPlayer
加载更多回复(5)

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧