我有一个用C#/ .NET编写的Windows应用程序。
单击按钮时如何播放特定声音?
答案 0 :(得分:197)
您可以使用:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav");
player.Play();
答案 1 :(得分:80)
您可以使用SystemSound,例如System.Media.SystemSounds.Asterisk.Play();
。
答案 2 :(得分:30)
对于Windows窗体,一种方法是使用SoundPlayer
private void Button_Click(object sender, EventArgs e)
{
using (var soundPlayer = new SoundPlayer(@"c:\Windows\Media\chimes.wav")) {
soundPlayer.Play(); // can also use soundPlayer.PlaySync()
}
}
这也适用于WPF,但您还有其他选项,例如使用MediaPlayer
MSDN page
答案 3 :(得分:10)
对于希望无缝融入Windows环境的应用程序,这是一个高级答案。其他答案中提供了播放特定声音的技术细节。除此之外,请注意以下两点:
在典型情况下使用五种标准系统声音,即
Asterisk - 当您想要突出显示当前事件时播放
问题 - 播放问题(系统信息框窗口播放此内容)
感叹号 - 使用excalamation图标播放(系统消息框窗口播放此内容)
提示音(默认系统声音)
严重停止(“手”) - 播放错误(系统消息框窗口播放此内容)
班级System.Media.SystemSounds
的方法会为你播放。
在声音控制面板中实现用户可自定义的任何其他声音
答案 4 :(得分:8)
代码bellow允许播放mp3文件和内存中的波形文件
player.FileName = "123.mp3";
player.Play();
来自http://alvas.net/alvas.audio,samples.aspx#sample6或
Player pl = new Player();
byte[] arr = File.ReadAllBytes(@"in.wav");
pl.Play(arr);
答案 5 :(得分:2)
要使用C#播放Windows窗体中的音频文件,请按以下步骤检查简单示例:
1.Go Visual Studio(VS-2008/2010/2012) - >文件菜单 - >单击“新建项目”。
2.在新项目中 - >单击Windows窗体应用程序 - >单击“名称”,然后单击“确定”。
将打开一个新的“Windows窗体”项目。
3.将Button控件从工具箱拖放到Windows窗体。
4.双击按钮以自动创建默认的Click事件处理程序,并添加以下代码。
此代码显示“文件打开”对话框,并将结果传递给您将在下一步中创建的名为“playSound”的方法。
OpenFileDialog dialog = new OpenFileDialog();
dialog.Filter = "Audio Files (.wav)|*.wav";
if(dialog.ShowDialog() == DialogResult.OK)
{
string path = dialog.FileName;
playSound(path);
}
5.在button1_Click事件处理器下添加以下方法代码。
private void playSound(string path)
{
System.Media.SoundPlayer player = new System.Media.SoundPlayer();
player.SoundLocation = path;
player.Load();
player.Play();
}
6.现在只需按F5运行代码即可运行应用程序。
7.单击按钮并选择一个音频文件。加载文件后,声音将播放。
我希望这对初学者来说是有用的例子......
答案 6 :(得分:0)
我认为您必须首先将.wav文件添加到参考资料。例如,您有一个名为Sound.wav的声音文件。将Sound.wav文件添加到Resources之后,可以使用以下代码:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(Properties.Resources.Sound);
player.Play();
这是另一种播放声音的方法。