Ich habe eine Windows-Anwendung in C # /. NET geschrieben.
Wie kann ich einen bestimmten Sound abspielen, wenn auf eine Schaltfläche geklickt wird?
Ich habe eine Windows-Anwendung in C # /. NET geschrieben.
Wie kann ich einen bestimmten Sound abspielen, wenn auf eine Schaltfläche geklickt wird?
Antworten:
Du könntest benutzen:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(@"c:\mywavfile.wav");
player.Play();
Sie können beispielsweise SystemSound verwendenSystem.Media.SystemSounds.Asterisk.Play();
.
Für Windows Forms besteht eine Möglichkeit darin, die zu verwenden 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()
}
}
Dies funktioniert auch mit WPF, Sie haben jedoch andere Optionen wie die Verwendung der MediaPlayer
MSDN-Seite
ButtonClick
, einfach weil es so aussieht, als ob sie dem Stil der C # -Nennung mehr folgt.
Dies ist eine allgemeine Antwort für Anwendungen, die sich nahtlos in die Windows-Umgebung einfügen möchten. Technische Details zum Spielen eines bestimmten Sounds wurden in anderen Antworten angegeben. Beachten Sie außerdem immer diese beiden Punkte:
Verwenden Sie in typischen Szenarien fünf Standardsystem-Sounds , z
Sternchen - Spielen, wenn Sie das aktuelle Ereignis hervorheben möchten
Frage - Spielen Sie mit Fragen (das Fenster des Systemnachrichtenfelds spielt dieses ab)
Ausrufezeichen - Spielen Sie mit dem Ausrufezeichen-Symbol (das Fenster des Systemmeldungsfelds spielt dieses ab).
Piepton (Standard-Systemton)
Kritischer Stopp ("Hand") - Spiel mit Fehler (Systemmeldungsfeldfenster spielt dieses ab)
Unterrichtsmethoden System.Media.SystemSounds
spielen sie für Sie.
Implementieren Sie alle anderen Geräusche als kundengerecht von den Benutzern in Ton Bedienfeld
System.Media.SystemSounds.Hand.Play(); Thread.Sleep(2000);
spielt den Sound Hand . Beachten Sie, dass es asynchron abgespielt wird. Hier habe ich einen Sleep-Befehl hinzugefügt, um auf die Fertigstellung des Sounds zu warten. Wenn Sie nicht warten und einen anderen Sound abspielen, stoppt der vorherige sofort.
Mit dem folgenden Code können Sie auch MP3-Dateien und In-Memory-Wave-Dateien abspielen
player.FileName = "123.mp3";
player.Play();
von http://alvas.net/alvas.audio,samples.aspx#sample6 oder
Player pl = new Player();
byte[] arr = File.ReadAllBytes(@"in.wav");
pl.Play(arr);
Um eine Audiodatei in Windows-Form mit C # abzuspielen, überprüfen wir das einfache Beispiel wie folgt:
1. Gehen Sie zu Visual Studio (VS-2008/2010/2012) -> Menü Datei -> klicken Sie auf Neues Projekt.
2. Klicken Sie im neuen Projekt -> auf Windows Forms-Anwendung -> Name angeben und dann auf OK.
Ein neues "Windows Forms" -Projekt wird geöffnet.
3. Ziehen Sie ein Button-Steuerelement per Drag & Drop aus der Toolbox in Windows Form.
4.Doppeln Sie auf die Schaltfläche, um automatisch den Standard-Click-Ereignishandler zu erstellen, und fügen Sie den folgenden Code hinzu.
Dieser Code zeigt das Dialogfeld "Datei öffnen" an und übergibt die Ergebnisse an eine Methode namens "playSound", die Sie im nächsten Schritt erstellen werden.
OpenFileDialog dialog = new OpenFileDialog();
dialog.Filter = "Audio Files (.wav)|*.wav";
if(dialog.ShowDialog() == DialogResult.OK)
{
string path = dialog.FileName;
playSound(path);
}
5. Fügen Sie den folgenden Methodencode unter dem Ereignishander button1_Click hinzu.
private void playSound(string path)
{
System.Media.SoundPlayer player = new System.Media.SoundPlayer();
player.SoundLocation = path;
player.Load();
player.Play();
}
6. Lassen Sie uns jetzt die Anwendung ausführen, indem Sie einfach F5 drücken, um den Code auszuführen.
7.Klicken Sie auf die Schaltfläche und wählen Sie eine Audiodatei aus. Nach dem Laden der Datei wird der Sound abgespielt.
Ich hoffe, dies ist ein nützliches Beispiel für Anfänger ...
Ich denke, Sie müssen zuerst eine WAV-Datei zu Ressourcen hinzufügen. Zum Beispiel haben Sie eine Sounddatei mit dem Namen Sound.wav. Nachdem Sie die Datei Sound.wav zu Resources hinzugefügt haben, können Sie diesen Code verwenden:
System.Media.SoundPlayer player = new System.Media.SoundPlayer(Properties.Resources.Sound);
player.Play();
Dies ist eine weitere Möglichkeit, Sound abzuspielen.