我有一个用 C#/.NET 编写的 Windows 应用程序。
如何在单击按钮时播放特定的声音?
您可以使用:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav");
player.Play();
您可以使用SystemSound,例如
System.Media.SystemSounds.Asterisk.Play();
。
对于 Windows 窗体,一种方法是使用
SoundPlayer
using System.Media;
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 页面
对于想要无缝融入Windows环境的应用程序来说,这是一个有点高级的答案。其他答案中提供了播放特定声音的技术细节。除此之外,请务必注意以下两点:
典型场景使用五种标准系统声音,即
星号 - 当您想要突出显示当前事件时播放
问题 - 玩问题(系统消息框窗口播放这个)
感叹号 - 玩感叹号图标(系统消息框窗口播放这个)
嘟嘟声(默认系统声音)
关键停止(“手”)- 播放错误(系统消息框窗口播放此)
System.Media.SystemSounds
将为您播放。在声音控制面板中实现用户可自定义的任何其他声音
下面的代码也允许播放 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);
我认为您必须首先将 .wav 文件添加到资源中。例如,您有名为 Sound.wav 的声音文件。将 Sound.wav 文件添加到 Resources 后,您可以使用以下代码:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(Properties.Resources.Sound);
player.Play();
这是播放声音的另一种方式。
要使用 C# 在 Windows 窗体中播放音频文件,让我们看一下简单的示例,如下所示:
1.Go Visual Studio(VS-2008/2010/2012) --> 文件菜单 --> 点击新建项目。
2.在“新项目”中 --> 单击“Windows 窗体应用程序”-->“给出名称”,然后单击“确定”。
将打开一个新的“Windows Forms”项目。
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.单击按钮并选择音频文件。文件加载后,将播放声音。
我希望这对初学者来说是有用的例子......