У меня есть приложение Windows, написанное на С#/. NET.
Как я могу воспроизвести определенный звук при нажатии кнопки?
У меня есть приложение Windows, написанное на С#/. NET.
Как я могу воспроизвести определенный звук при нажатии кнопки?
Вы можете использовать:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav");
player.Play();
Вы можете использовать SystemSound, например System.Media.SystemSounds.Asterisk.Play();
.
Для Windows Forms одним из способов является использование 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
Это немного высокоуровневый ответ для приложений, которые хотят легко вписаться в среду Windows. Технические характеристики воспроизведения определенного звука были предоставлены в других ответах. Кроме того, всегда обратите внимание на эти две точки:
Используйте пять стандартных системных звуков в типичных сценариях, т.е.
Asterisk - воспроизведение, когда вы хотите выделить текущее событие
Вопрос - игра с вопросами (это окно окна системных сообщений)
Восклицание - играйте с символом excalamation (это окно окна системного сообщения)
Звуковой сигнал (системный звук по умолчанию)
Критическая остановка ( "Рука" ) - воспроизведение с ошибкой (это окно окна системных сообщений) |
Способы класса 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);
Чтобы воспроизвести аудиофайл в форме Windows с помощью С#, проверьте простой пример следующим образом:
1.Go Visual Studio (VS-2008/2010/2012) → Меню "Файл" → "Новый проект".
2. В новом проекте → щелкните "Приложение Windows Forms" → "Дать имя" и нажмите "ОК".
Откроется новый проект Windows Forms.
3.Drag-and-Drop элемент управления Button из панели инструментов в форму Windows.
4. Дважды нажмите кнопку, чтобы автоматически создать обработчик события Click 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. Нажмите кнопку и выберите аудиофайл. После загрузки файла звук будет воспроизводиться.
Надеюсь, это полезный пример для новичков...
Я думаю, что вы должны сначала добавить файл .wav к ресурсам. Например, у вас есть звуковой файл с именем Sound.wav. После добавления файла Sound.wav в раздел "Ресурсы" вы можете использовать этот код:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(Properties.Resources.Sound);
player.Play();
Это еще один способ воспроизведения звука.