Die MessageBox

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.)

Die Vollständige Syntax und die Rückgabewerte der MessageBox

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.

Übung zur MessageBox

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!

Benutzerdefinierte Suche


Mehr:

Die InputBox