Odpowiedź @ Praveen podała tylko kolejny fakt informacyjny. Dziękuję Dexterowi za pytanie o symbol „@”.
Allen Linatoc
2
@bporter, to nie działa z plikami mp3; jest ograniczony tylko do formatu wav
Najeeb
Jaka szkoda tego API! Nie odtwarza plików MP3 ani MIDI. Zupełnie bezużyteczne dla mnie. Windows ma natywne wsparcie dla MP3 i MIDI od co najmniej Windows XP. Wstyd na Microsoft!
Elmue,
91
Możesz na przykład użyć SystemSoundSystem.Media.SystemSounds.Asterisk.Play(); .
bardzo przydatne. może pomóc użycie domyślnych ustawień systemu.
Babak.Abad
4
Należy pamiętać, że jeśli wyłączysz dźwięki systemowe w ustawieniach systemu Windows (przynajmniej nowszy Windows), to nic nie odtwarza.
Artholl,
32
W przypadku Windows Forms jednym ze sposobów jest użycie SoundPlayer
privatevoidButton_Click(object sender,EventArgs e){
using (var soundPlayer =newSoundPlayer(@"c:\Windows\Media\chimes.wav")){
soundPlayer.Play();// can also use soundPlayer.PlaySync()}}
Co więcej, w kodzie produkcyjnym utwórz go tylko raz i używaj go wiele razy, zamiast tworzyć go za każdym naciśnięciem przycisku.
Shibumi,
Zmieniłbym nazwę tej funkcji na ButtonClick, po prostu dlatego, że wydaje się, że bardziej odpowiada stylowi nazewnictwa C #.
Ethan Bierlein
1
@EthanBierlein - to chyba była konwencja nazewnictwa, kiedy zamieściłem odpowiedź;)
ChrisF
1
Huh. Więc to była stara konwencja?
Ethan Bierlein
@EthanBierlein to wciąż to, co jest generowane automatycznie przez projekty formularzy systemu Windows w programie Visual Studio
JAD
13
Dodatkowe informacje.
To nieco wysokopoziomowa odpowiedź dla aplikacji, które chcą bezproblemowo dopasować się do środowiska Windows. Szczegóły techniczne grania poszczególnych dźwięków podano w innych odpowiedziach. Poza tym zawsze zwracaj uwagę na te dwa punkty:
Użyj pięciu standardowych dźwięków systemowych w typowych scenariuszach , tj
Gwiazdka - graj, gdy chcesz zaznaczyć aktualne wydarzenie
Pytanie - baw się pytaniami (w okienku komunikatów systemowych jest odtwarzane to)
Wykrzyknik - baw się ikoną wykrzyknika (w oknie komunikatów systemowych odtwarza się ten)
Sygnał dźwiękowy (domyślny dźwięk systemowy)
Krytyczne zatrzymanie („Ręka”) - gra z błędem (w oknie komunikatów systemowych jest odtwarzane to)
Zaimplementuj inne dźwięki, które użytkownicy mogą dostosować w panelu sterowania Dźwięk
W ten sposób użytkownicy mogą łatwo zmieniać lub usuwać dźwięki z Twojej aplikacji i nie musisz do tego pisać żadnego interfejsu użytkownika - już tam jest
Każdy profil użytkownika może nadpisać te dźwięki na swój sposób
W aplikacji odczytaj ścieżkę pliku dźwiękowego lub zasób DLL z kluczy rejestru i odtwórz go. (Jak odtwarzać dźwięki, które możesz zobaczyć w innych odpowiedziach.)
Dziękuję za dodatkowe informacje. Chciałbym dodać przykład: System.Media.SystemSounds.Hand.Play(); Thread.Sleep(2000);odtwarza dźwięk Hand . Zauważ, że gra asynchronicznie, tutaj dodałem polecenie uśpienia, aby poczekać na zakończenie dźwięku. Jeśli nie zaczekasz i nie odtworzysz innego dźwięku, poprzedni natychmiast się zatrzyma.
Matt,
8
Poniższy kod umożliwia odtwarzanie plików mp3 i plików Wave zapisanych w pamięci
Myślę, że najpierw musisz dodać plik .wav do zasobów. Na przykład masz plik dźwiękowy o nazwie Sound.wav. Po dodaniu pliku Sound.wav do zasobów możesz użyć tego kodu:
System.Media.SoundPlayer player =newSystem.Media.SoundPlayer(Properties.Resources.Sound);
player.Play();
Możesz na przykład użyć SystemSound
System.Media.SystemSounds.Asterisk.Play();
.źródło
W przypadku Windows Forms jednym ze sposobów jest użycie
SoundPlayer
Strona MSDN
Będzie to również działać z WPF, ale masz inne opcje, takie jak korzystanie ze
MediaPlayer
strony MSDNźródło
ButtonClick
, po prostu dlatego, że wydaje się, że bardziej odpowiada stylowi nazewnictwa C #.Dodatkowe informacje.
To nieco wysokopoziomowa odpowiedź dla aplikacji, które chcą bezproblemowo dopasować się do środowiska Windows. Szczegóły techniczne grania poszczególnych dźwięków podano w innych odpowiedziach. Poza tym zawsze zwracaj uwagę na te dwa punkty:
Użyj pięciu standardowych dźwięków systemowych w typowych scenariuszach , tj
Gwiazdka - graj, gdy chcesz zaznaczyć aktualne wydarzenie
Pytanie - baw się pytaniami (w okienku komunikatów systemowych jest odtwarzane to)
Wykrzyknik - baw się ikoną wykrzyknika (w oknie komunikatów systemowych odtwarza się ten)
Sygnał dźwiękowy (domyślny dźwięk systemowy)
Krytyczne zatrzymanie („Ręka”) - gra z błędem (w oknie komunikatów systemowych jest odtwarzane to)
Metody klasowe
System.Media.SystemSounds
zagrają je za Ciebie.Zaimplementuj inne dźwięki, które użytkownicy mogą dostosować w panelu sterowania Dźwięk
źródło
System.Media.SystemSounds.Hand.Play(); Thread.Sleep(2000);
odtwarza dźwięk Hand . Zauważ, że gra asynchronicznie, tutaj dodałem polecenie uśpienia, aby poczekać na zakończenie dźwięku. Jeśli nie zaczekasz i nie odtworzysz innego dźwięku, poprzedni natychmiast się zatrzyma.Poniższy kod umożliwia odtwarzanie plików mp3 i plików Wave zapisanych w pamięci
z http://alvas.net/alvas.audio,samples.aspx#sample6 lub
z http://alvas.net/alvas.audio,samples.aspx#sample7
źródło
Aby odtworzyć plik audio w formularzu Windows przy użyciu C #, sprawdźmy prosty przykład w następujący sposób:
1. przejdź do programu Visual Studio (VS-2008/2010/2012) -> menu Plik -> kliknij Nowy projekt.
2. W New Project -> kliknij Windows Forms Application -> Give Name, a następnie kliknij OK.
Otworzy się nowy projekt „Windows Forms”.
3. Przeciągnij i upuść kontrolkę Button z przybornika do formularza systemu Windows.
4. Kliknij dwukrotnie przycisk, aby automatycznie utworzyć domyślną procedurę obsługi zdarzeń Click, i dodaj następujący kod.
Ten kod wyświetla okno dialogowe Otwieranie pliku i przekazuje wyniki do metody o nazwie „playSound”, którą utworzysz w następnym kroku.
5. Dodaj następujący kod metody pod instrukcją obsługi zdarzenia button1_Click.
6. Teraz uruchommy aplikację, naciskając klawisz F5, aby uruchomić kod.
7. Kliknij przycisk i wybierz plik audio. Po załadowaniu pliku zostanie odtworzony dźwięk.
Mam nadzieję, że jest to przydatny przykład dla początkujących ...
źródło
Myślę, że najpierw musisz dodać plik .wav do zasobów. Na przykład masz plik dźwiękowy o nazwie Sound.wav. Po dodaniu pliku Sound.wav do zasobów możesz użyć tego kodu:
To inny sposób odtwarzania dźwięku.
źródło