Messageboxen gibt es in zwei unterschiedlichen Ausprägungen: Als reine Ausgabemeldung, ohne eine Antwort des Anwenders zu erfragen, oder als Meldung mit Rückantwort des Anwenders.
Abbildung 152, MsgBox, keine Rückantwort vorgesehen
Die Messagebox in Abbildung 152 läßt keine differenzierte Rückantwort zu, der Anwender hat nur die Möglichkeit, die Nachricht über OK zu quittieren.
Dies ist die einfachste Form der Messagebox, der Code dafür ist entsprechend simpel:
msgbox „Alles klar?“
Abbildung 153, MsgBox mit Rückantwort
Die Nachricht in Abbildung 153 verlangt eine Antwort, Ja oder Nein. Wenn diese Antwort einen Sinn haben soll, dann muß das Programm darauf reagieren, die Antwort muß vom Programm „aufgefangen“ werden.
Für diesen Fall lautet die Code-Zeile:
M=msgbox(„Alles klar?“, vbyesno)
Hier wird eine Variable M benutzt, um die Antwort
abzuspeichern. Im weiteren Programmverlauf wird diese Variable dazu benutzt, in
die eine oder andere Programmvariante zu verzweigen.
Beachten Sie, dass in
diesem Fall die Syntax eine Klammer vorschreibt, die die Meldung („Alles
klar?“) und eine sog. Vb-Konstante (vbyesno) enthält.
Die Art der
VB-Konstante legt Anzahl und Funktion der Schaltflächen der Message Box
fest.
Abbildung 154, MsgBox, Rückantwort und Abbruch vorgesehen
Die Messagebox in Abbildung 154 ist vom gleichen Typ wie die in Abbildung 153. Entsprechend ähnlich sieht die Code-Zeile dafür aus:
M=msgbox(„Alles klar?“, vbyesnocancel)
Sie unterscheidet sich nur in der vb-Konstanten vbyesnocancel
anstelle von vbyesno.
Die Messagebox bekommt eine dritte Schaltfläche Abbrechen für
den Fall, dass der Anwender sich nicht entscheiden will.
Anstelle der vb-Konstanten können auch numerische
Ausdrücke gewählt werden.
Statt vbyesno kann beispielsweise der Wert 4
benutzt werden, statt vbyesnocancel der Wert 3.
Die weiteren Einstellungen
dieses Arguments entnehmen Sie bitte dem Folgekapitel (Die Vollständige Syntax
und die Rückgabewerte der MessageBox)
Dort finden Sie zudem die Rückgabewerte der MessageBox, die in unserem Beispiel in der Varianten M aufgefangen werden und die Auskunft darüber geben, welche Schaltfläche der Anwender angeklickt hatte. (6 für Ja, 7 für Nein, 2 für Abbrechen usw.)
Auszug aus der WORD-Hilfe:
MsgBox-Funktion
Zeigt eine Meldung in einem Dialogfeld an und wartet darauf, daß der Benutzer auf eine Schaltfläche klickt. Es wird dann einen Wert vom Typ Integer zurückgegeben, der anzeigt, auf welche Schaltfläche der Benutzer geklickt hat.
Syntax
MsgBox(prompt[, buttons] [, title] [, helpfile, context])
Die Syntax der MsgBox-Funktion verwendet die folgenden benannten Argumente:
Teil |
Beschreibung |
prompt |
Erforderlich. Ein Zeichenfolgenausdruck, der als Meldung im Dialogfeld erscheint. Die Maximallänge von prompt ist - je nach Breite der verwendeten Zeichen - etwa 1024 Zeichen. Wenn prompt aus mehreren Zeilen besteht, müssen Sie die Zeilen mit einem Wagenrücklaufzeichen (Chr(13)), einem Zeilenvorschubzeichen (Chr(10)) oder einer Kombination aus Wagenrücklaufzeichen und Zeilenvorschubzeichen (Chr(13) & Chr(10)) trennen. |
buttons |
Optional. Ein numerischer Ausdruck, der der Summe der Werte entspricht, die Anzahl und Typ der anzuzeigenden Schaltflächen, die Art des zu verwendenden Symbols sowie die Standardschaltfläche und die Bindung des Dialogfeldes angeben. Wenn Sie buttons nicht angeben, ist der Standardwert 0. |
title |
Optional. Ein Zeichenfolgenausdruck, der in der Titelleiste des Dialogfeldes angezeigt wird. Wenn Sie title nicht angeben, wird der Anwendungsname in der Titelleiste angezeigt. |
helpfile |
Ein Zeichenfolgenausdruck, der die Hilfedatei mit der kontextbezogenen Hilfe für das Dialogfeld angibt. Wenn Sie helpfile angeben, müssen Sie auch context angeben. |
context |
Optional. Ein numerischer Ausdruck mit der Hilfekontextkennung, die der Autor der Hilfe für das entsprechende Hilfethema gegeben hat. Wenn Sie context angeben, müssen Sie auch helpfile angeben. |
Einstellungen
Das Argument buttons hat die folgenden Einstellungen:
Konstante |
Wert |
Beschreibung |
vbOKOnly |
0 |
Nur die Schaltfläche OK anzeigen. |
VbOKCancel |
1 |
Schaltflächen OK und Abbrechen anzeigen. |
VbAbortRetryIgnore |
2 |
Schaltflächen Abbruch, Wiederholen und Ignorieren anzeigen. |
VbYesNoCancel |
3 |
Schaltflächen Ja, Nein und Abbrechen anzeigen. |
VbYesNo |
4 |
Schaltflächen Ja und Nein anzeigen. |
VbRetryCancel |
5 |
Schaltflächen Wiederholen und Abbrechen anzeigen. |
VbCritical |
16 |
Meldung mit Stop-Symbol anzeigen. |
VbQuestion |
32 |
Meldung mit Fragezeichen-Symbol anzeigen. |
VbExclamation |
48 |
Meldung mit Ausrufezeichen-Symbol anzeigen. |
VbInformation |
64 |
Meldung mit Info-Symbol anzeigen. |
VbDefaultButton1 |
0 |
Erste Schaltfläche ist Standardschaltfläche. |
VbDefaultButton2 |
256 |
Zweite Schaltfläche ist Standardschaltfläche. |
VbDefaultButton3 |
512 |
Dritte Schaltfläche ist Standardschaltfläche. |
VbDefaultButton4 |
768 |
Vierte Schaltfläche ist Standardschaltfläche. |
VbApplicationModal |
0 |
An die Anwendung gebunden. Der Benutzer muß auf das Meldungsfeld reagieren, bevor er seine Arbeit mit der aktuellen Anwendung fortsetzen kann. |
VbSystemModal |
4096 |
An das System gebunden. Alle Anwendungen werden unterbrochen, bis der Benutzer auf das Meldungsfeld reagiert. |
vbMsgBoxHelpButton |
16384 |
Adds Help button to the message box |
VbMsgBoxSetForeground |
65536 |
Specifies the message box window as the foreground window |
vbMsgBoxRight |
524288 |
Text is right aligned |
vbMsgBoxRtlReading |
1048576 |
Specifies text should appear as right-to-left reading on Hebrew and Arabic systems |
Die erste Gruppe von Werten (0-5) beschreibt die Anzahl und den Typ der im Dialogfeld angezeigten Schaltflächen. Die zweite Gruppe (16, 32, 48, 64) beschreibt die Symbolart. Die dritte Gruppe (0, 256, 512) legt die Standardschaltfläche fest. Die vierte Gruppe (0, 4096) legt fest, in welcher Form das Dialogfeld gebunden ist. Verwenden Sie beim Addieren der Zahlen zu einem Gesamtwert für das Argument buttons nur eine Zahl aus jeder Gruppe.
Anmerkung: Diese Konstanten sind durch Visual Basic für Applikationen festgelegt. Daher können die Namen an einer beliebigen Stelle im Code anstelle der tatsächlichen Werte verwendet werden.
Rückgabewerte
Konstante |
Wert |
Beschreibung |
vbOK |
1 |
OK |
vbCancel |
2 |
Abbrechen |
vbAbort |
3 |
Abbruch |
vbRetry |
4 |
Wiederholen |
vbIgnore |
5 |
Ignorieren |
vbYes |
6 |
Ja |
vbNo |
7 |
Nein |
Bemerkungen
Wenn sowohl helpfile als auch context angeben werden, kann der Benutzer F1 (Windows) drücken, um das Hilfethema für context anzuzeigen. Einige Host-Anwendungen, zum Beispiel Microsoft WORD, fügen dem Dialogfeld automatisch die Schaltfläche Hilfe hinzu.
Wenn im Dialogfeld die Schaltfläche Abbrechen angezeigt wird, hat das Drücken von ESC dieselbe Wirkung wie das Klicken auf Abbrechen. Wird im Dialogfeld die Schaltfläche Hilfe angezeigt, wird für das Dialogfeld eine kontextbezogene Hilfe zur Verfügung gestellt. Ein Wert wird aber nur zurückgegeben, wenn auf eine der anderen Schaltflächen geklickt wird.
Anmerkung: Wenn Sie außer dem ersten benannten Argument weitere Argumente angeben möchten, müssen Sie MsgBox in einem Ausdruck verwenden. Wenn Sie einige Argumente mit einer bestimmten Position nicht angeben möchten, müssen Sie dennoch das entsprechende Komma als Trennzeichen angeben.
Im Praxisbeispiel msgbox.doc lernen Sie
· Wie Sie Messageboxen mit unterschiedlichen Schaltflächen erstellen
· Wie Sie Meldungen mit Stop-, Warnungs- oder Info-Symbolen erzeugen
Die Übung hat den Schwierigkeitsgrad 2.
Nicht gefunden, was Sie suchen? Dann geben Sie hier Ihren Suchbegriff ein!