22 Stimmen

Delphi: System-Sounds abspielen

Tutorial von Delphianer | 27.06.2012 um 16:47

Delphi macht es uns sehr einfach, Systemsounds wie zum Beispiel die Startmelodie, den Beenden-Sound oder den standardmäßigen Fehler-Ton innerhalb der eigenen Anwendung abzuspielen.

Wir verwenden dazu die PlaySound Funktion aus der Unit MMSystem, mit der es auch möglich ist, beliebige Wave-Dateien abzuspielen. PlaySound können wir eine Datei oder den Namen eines Systemsounds übergeben sowie Angaben dazu machen, wie der Sound abgespielt werden soll:

uses MMSystem;

PlaySound('SYSTEMSTART', 0, SND_ASYNC);

Das Beispiel spielt die Startmelodie von Windows (Konstante SYSTEMSTART) ein einziges mal (SND_ASYNC) ab.

Konstanten für System Sounds

Statt "SYSTEMSTART" lassen sich unter anderem die folgenden anderen Konstanten mit PlaySound verwenden:

  • SYSTEMEXCLAMATION (Hinweis)
  • SYSTEMHAND (Kritischer Abbruch)
  • SYSTEMQUESTION (Frage)
  • SYSTEMSTART (Windows-Start)
  • SYSTEMEXIT (Windows-Shutdown)
  • SYSTEMASTERIX (Stern)
  • RESTOREUP (Vergrößern)
  • RESTOREDOWN (Verkleinern)
  • MENUCOMMAND (Menübefehl)
  • MENUPOPUP (Pop-Up)
  • MAXIMIZE (Maximieren)
  • MINIMIZE (Minimieren)
  • MAILBEEP (Neue Mail)
  • OPEN (Programm öffnen)
  • CLOSE (Programm schließen)
  • APPGPFAULT (Programmfehler)

Definiert sind alle verfügbaren Konstanten in der Registry unter HKEY_CURRENT_USER -> AppEvents -> Schemes -> Apps -> .Default. Hier finden sich je nach installierten Programmen und Windows System sicher noch das eine oder andere Sound-File und die zugehörige Konstante.

Abspiel Modi

SND_ASYNC spielt den Sound im Hintergrund ab und lässt das Programm während des Abspielens weiterlaufen.

SND_SYNC stoppt das Programm und lässt das Programm erst dann weiterlaufen, wenn der Sound komplett abgespielt wurde.

SND_LOOP spielt den Sound in einer Schleife immer wieder ab. Erst beim Abspielen eines neuen Sounds oder beim Aufruf von PlaySound(nil, 0, 0) wird das Abspielen gestoppt.

AntwortenPositivNegativ

Über den Autor

AvatarDer Autor hat keine Kurzbeschreibung seines Profils angegeben.
Profil anzeigen

 

Ähnliche Themen

Wichtiger Hinweis

Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.

Jetzt mitmachen

Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.