![]() |
ShowMessage-Funktion mit Ton
Hallo ihr Experten,
wenn ich Delphi eine ShowMessage oder MessageDlg anzeigen lasse ertönt im komischerweise im Hintergrund kein Ton. Normalerweise ist es bei Windows oder bei allgemein bei allen anderen Programmiersprachen es so ist, dass wenn eine MessageDlg oder allegemein eine Meldung auftaucht, dass so ein Ton auch kommt. Gibt es in Delphi dazu eine Funktion, damit ein Ton bei einer ShowMessge/MessageDlg ertönt? :gruebel: zero_x |
Re: ShowMessage-Funktion mit Ton
Rufe einfach vorher
Delphi-Quellcode:
auf
Beep();
|
Re: ShowMessage-Funktion mit Ton
Hallo mkinzler,
danke, aber gibt es keine Möglichkeit mit Parametern oder einer Funktionen dies zu aktivieren? zero_x |
Re: ShowMessage-Funktion mit Ton
Versuch es mal mit der Windows eigenen
![]() |
Re: ShowMessage-Funktion mit Ton
Hi,
entweder, du verwendest die Windows-MesageBox mit einem Flag MB_ICON..., oder du rufst vorher die Funktion MessageBeep mit einem MB_ICON... auf. Dann wird der zu diesem Symbol passende Sound abgespielt. Die Konstanten für die Symbole sind: (-1) - kaum hörbarer Ton über Computerlautsprecher statt Soundkarte MB_OK - Sound nur bei MessageBeep, ansonsten eigentlich Flag für den OK-Button und nicht für eines der Symbole - Standardsound MB_ICONSTOP - Schwerer Fehler (früher STOP-Symbol (Win16), dann abgelöst von X im roten Kreis) MB_ICONEXCLAMATION - Fehler (Ausrufezeichen im gelben Dreieck) MB_ICONQUESTION - Frage (? in Sprechblase) MB_ICONINFORMATION - Information (i in Sprechblase) Mfg FAlter |
Re: ShowMessage-Funktion mit Ton
Hallo,
wenn ich das über die API-MessageBox-Klasse mit den Konstanten(MB_*) aufrufe erhalte ich trozdem keinen Ton! Mit den beiden Funktionen Beep() und MessageBeep() funktioniert es. Frage ich mal andersherum: wieso ist es in Delphi nicht als Standard, dass automatisch bei dem Aufruf einer MessageBox ein ein Ton erönt? Vielen Dank euch Beiden! zero_x |
Re: ShowMessage-Funktion mit Ton
Hallo,
ShowMessage und MessageDlg sind eigene Funktionen von Delphi. Sie erstellen eine Form, die danach angezeigt wird. Demnach gibt es kein Beep. MessageBeep ist allerdings eine Windows-Funktion, mit eben dem typischen Beep. |
Re: ShowMessage-Funktion mit Ton
Zitat:
|
Re: ShowMessage-Funktion mit Ton
Hi,
Zitat:
Delphi-Quellcode:
Mfg
MessageBox(Handle, 'Wuppdi!', 'Wuppdi?', MB_OK or MB_ICONINFORMATION);
FAlter |
Re: ShowMessage-Funktion mit Ton
Bei den API Funktionen kommt ein Sound, sofern dies global nicht deaktiviert ist.
Bei der Delphi Variante MessageDlg() jedoch nicht. Nachrüsten könnte man es so:
Delphi-Quellcode:
(
interface
uses Dialogs, Windows; function MessageDlgS(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons = [mbOk]; HelpCtx: Longint = 0): Word; implementation function MessageDlgS(const Msg: string; DlgType: TMsgDlgType; Buttons: TMsgDlgButtons; HelpCtx: Longint): Word; const Sounds: array [TMsgDlgType] of Integer = ( MB_ICONEXCLAMATION, MB_ICONHAND, MB_OK, MB_ICONQUESTION, MB_ICONASTERISK); begin MessageBeep(Sounds[DlgType]); Result := MessageDlg(Msg,DlgType,Buttons,HelpCtx); end; ![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz