Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Tutorials und Kurse (https://www.delphipraxis.net/36-tutorials-und-kurse/)
-   -   Delphi Benutzerdefinierte MessageBoxen (https://www.delphipraxis.net/41201-benutzerdefinierte-messageboxen.html)

Assun 27. Feb 2005 18:08


Benutzerdefinierte MessageBoxen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hi !

Wie erstelle ich benutzerdefinierte MessageBoxen ?
[u]

Habt ihr euch noch nie gefragt "Wie kann ich bei meinen MessageBoxen nur den Titel ändern ???" oder "Wie kann ich meinen MessageBoxen Sound verleihen ???" ?

Hier die Antwort :

Es fängt alles hiermit an :
Delphi-Quellcode:
Application.MessageBox
Dann kommt Der Message Text
Delphi-Quellcode:
('Dies ist eine benutzerdefinierte MessageBox !'
gefolgt von einem Komma.

Dann der Titel
Delphi-Quellcode:
'Mein eigener Titel !!!'
gefolgt von einem Komma.

und nun das Wichtigste : Das Symbol und der Sound ! z.b.
Delphi-Quellcode:
0+5
für ein einfaches Meldungsfenster mit Sound,
Delphi-Quellcode:
0+16
für eine schöne Error Meldung mit einem noch schöneren "Wammmmm" :mrgreen: etc.

0 Steht dabei für die Buttons.

0 = "Ok"
1 = "Ok,Abbrechen"
2 = "Ja,Nein,Abbrechen"

und die Zahlen hinter dem Plus ?

ganz einfach :

5 = einfaches Meldungsfenster ohne Icon aber mit Sound.
16 = Error Messagefenster mit Sound
64 = Informations Messagefenster mit Sound
48 = Warunungs Messagefenster mit Sound

War doch gar nicht so schwer, gell ? :mrgreen:

Zum Schluss noch n Paar Standartbeispiele :



einfaches Message Fenster mit Sound :

Delphi-Quellcode:
Application.MessageBox ('Dies ist eine benutzerdefinierte MessageBox !','Mein eigener Titel !!!',0+5);
Error Message Fenster mit Sound :

Delphi-Quellcode:
Application.MessageBox ('Dies ist eine benutzerdefinierte MessageBox !','Mein eigener Titel !!!',0+16);
Informations Message Fenster mit Sound :

Delphi-Quellcode:
Application.MessageBox ('Dies ist eine benutzerdefinierte MessageBox !','Mein eigener Titel !!!',0+64);
Warnung Message Fenster mit Sound :

Delphi-Quellcode:
Application.MessageBox ('Dies ist eine benutzerdefinierte MessageBox !','Mein eigener Titel !!!',0+48);

Sodele !

Dat wars. Hoffe ich konnte jemandem Helfen und ihr findet das einigermaßen nützlich !

Gruß Sebastian "Assun" Dietrich

PS : hab mal noch n Beispiel Source drangehängt...

Thorben77 27. Feb 2005 18:27

Re: Benutzerdefinierte MessageBoxen
 
Also imho stehen die Zahlen für die Buttons:

0 = Ok
1 = Ok, Abbrechen
2 = Abbrechen, Wiederholen, Ignorieren
3 = Ja, Nein, Abbrechen
4 = Ja, Nein
5 = Wiederholen, Abbrechen

Und "hinterm Plus" gibts auch noch 32 für nen Fragezeichensymbol.


mfG

mirage228 27. Feb 2005 18:38

Re: Benutzerdefinierte MessageBoxen
 
Hi,

Du sollst die Zahlen nicht mit + sondern mit OR verknüpfen. Da es sich hierbei um Bit-Flags handeln, musst Du statt dem Plus das OR verwenden.

Zudem ist nicht ratsam die Zahlenwerte (16 etc.) zu verwenden, sondern die in der Windows.pas definierten Konstanten, wie z.B. MB_ICONERROR

mfG
mirage228

Assun 27. Feb 2005 18:52

Re: Benutzerdefinierte MessageBoxen
 
Zitat:

Zudem ist nicht ratsam die Zahlenwerte (16 etc.) zu verwenden, sondern die in der Windows.pas definierten Konstanten, wie z.B. MB_ICONERROR
warum ?

mirage228 27. Feb 2005 18:54

Re: Benutzerdefinierte MessageBoxen
 
Zitat:

Zitat von Assun
Zitat:

Zudem ist nicht ratsam die Zahlenwerte (16 etc.) zu verwenden, sondern die in der Windows.pas definierten Konstanten, wie z.B. MB_ICONERROR
warum ?

Erstmal ist für den, der die Werte nicht, klar, was Du damit meinst (ICON -> ERROR, ist klarer als 16 ;) ) und wenn Microsoft die Werte ändert und die Windows.pas aktualisiert wird, musst Du Dein Programm nicht an X Stellen ändern?

mfG
mirage228

Muetze1 27. Feb 2005 20:01

Re: Benutzerdefinierte MessageBoxen
 
Moin!

Und es heisst Standard und nicht Stand-Art - es ist keine Art zu stehen... Wenn ich sowas lese wird mir immer :kotz: ...

MfG
Muetze1

Luckie 27. Feb 2005 20:40

Re: Benutzerdefinierte MessageBoxen
 
Zitat:

Zitat von Assun
Zitat:

Zudem ist nicht ratsam die Zahlenwerte (16 etc.) zu verwenden, sondern die in der Windows.pas definierten Konstanten, wie z.B. MB_ICONERROR
warum ?

Weißt du aus dem Kofp welche Schaltenflächen und welches Symbol erscheint, wenn du 50 bei den Flags angibst? Rest siehe mirage.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:44 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz