MessageBox

Die MessageBox -Funktion erstellt, angezeigt und betreibt eine Meldungsfeld angezeigt. Das Meldungsfeld enthält eine anwendungsdefinierte Meldung und Titel, sowie eine beliebige Kombination der vordefinierten Symbole und Drucktasten.

Int MessageBox) HWND  hWnd, / / handle des BesitzerfenstersLPCTSTRlpText, / / Adresse der Text im MeldungsfeldLPCTSTRlpCaption, / / Adresse der Titel des MeldungsfeldsUINTuType / / Stil des Meldungsfelds);
 

Parameter

hWnd
Identifiziert das Besitzerfenster des Meldungsfelds erstellt werden. Wenn dieser Parameter NULL ist, hat das Meldungsfeld kein Besitzerfenster.
lpText
Zeiger auf eine Null-terminierte Zeichenfolge mit der Meldung angezeigt werden soll.
lpCaption
Zeiger auf eine Null-terminierte Zeichenfolge für den Titel des Dialogfelds verwendet. Wenn dieser Parameter NULL ist, wird der Standardtitel Fehler verwendet.
uType
Gibt einen Satz von Bitflags, die den Inhalt bestimmen und das Verhalten des Dialogfelds. Dieser Parameter kann eine Kombination von Flags aus den folgenden Gruppen von flags.

Geben Sie eines der folgenden Flags an, die im Meldungsfeld enthaltenen Schaltflächen:
Flagge Bedeutung
MB_ABORTRETRYIGNORE Das Meldungsfeld enthält drei Schaltflächen: Abort, wiederholen und ignorieren.
MB_OK Das Meldungsfeld enthält eine Schaltfläche: OK. Dies ist die Standardeinstellung.
MB_OKCANCEL Das Meldungsfeld enthält zwei Schaltflächen: OK und Abbrechen.
MB_RETRYCANCEL Das Meldungsfeld enthält zwei Drucktasten: wiederholen und Abbrechen.
MB_YESNO Das Meldungsfeld enthält zwei Drucktasten: Ja und Nein.
MB_YESNOCANCEL Das Meldungsfeld enthält drei Schaltflächen: Ja, Nein und Abbrechen.

Geben Sie eines der folgenden Flags ein Symbol im Meldungsfeld angezeigt:
Flagge Bedeutung
MB_ICONEXCLAMATION,
MB_ICONWARNING
Erscheint ein Ausrufezeichen Symbol im Meldungsfeld.
MB_ICONINFORMATION, MB_ICONASTERISK
Ein Symbol, bestehend aus einem Kleinbuchstaben i in einem Kreis angezeigt wird im Feld Nachricht.
MB_ICONQUESTION Im Meldungsfeld wird ein Fragezeichen-Symbol angezeigt.
MB_ICONSTOP,
MB_ICONERROR,
MB_ICONHAND
Ein Stop-Schild-Symbol im Meldungsfeld angezeigt wird.

Geben Sie eines der folgenden Flags an, die Schaltfläche "Standard":
Flagge Bedeutung
MB_DEFBUTTON1 Die erste Schaltfläche ist die Standardschaltfläche.

MB_DEFBUTTON1 ist die Standardeinstellung, wenn MB_DEFBUTTON2, MB_DEFBUTTON3 oder MB_DEFBUTTON4 angegeben wird.

MB_DEFBUTTON2 Die zweite Schaltfläche ist die Standardschaltfläche.
MB_DEFBUTTON3 Die dritte Schaltfläche ist die Standardschaltfläche.
MB_DEFBUTTON4 Die vierte Schaltfläche ist die Standardschaltfläche.

Geben Sie eines der folgenden Flags an die Modalität des Dialogfelds:
Flagge Bedeutung
MB_APPLMODAL Der Benutzer muss das Meldungsfeld reagieren, vor dem Fortsetzen der Arbeit im Fenster von der hWnd -Parameter identifiziert. Jedoch kann in den Fenstern der anderen Threads verschieben und arbeiten in diesen windows.

Abhängig von der Hierarchie der Fenster in der Anwendung kann der Benutzer zu anderen Fenstern innerhalb des Threads bewegen können. Alle untergeordneten Fenster des übergeordneten Elements des Meldungsfelds werden automatisch deaktiviert, Popup-Fenster jedoch nicht.

MB_APPLMODAL ist die Standardeinstellung, wenn weder MB_SYSTEMMODAL noch MB_TASKMODAL angegeben ist.

MB_SYSTEMMODAL Dasselbe wie MB_APPLMODAL, das Meldungsfeld den WS_EX_TOPMOST Stil hat. Verwenden Sie System-Modal Meldungsfelder zum Benachrichtigen des Benutzers von schweren, potenziell schädlichen Störungen, die sofortige Aufmerksamkeit (z.B. Speicher) erfordern. Dieses Flag hat keine Auswirkungen auf die Fähigkeit der Benutzer für die Interaktion mit Windows außer den hWnd zugeordnet.
MB_TASKMODAL Dasselbe wie MB_APPLMODAL, alle Fenster der obersten Ebene gehören des aktuellen Threads deaktiviert sind, wenn der hWnd -Parameter NULL ist. Verwenden Sie dieses Flag, wenn die aufrufende Anwendung oder Bibliothek verfügt nicht über ein Fensterhandle verfügbar aber muss noch Eingang in anderen Fenstern den aufrufenden Thread zu verhindern, ohne andere Threads anhalten.

Darüber hinaus können Sie die folgenden Flags angeben.:

MB_DEFAULT_DESKTOP_ONLY
Der Desktop gegenwärtig erhalten, Eingang muss ein Standard-Desktop; Andernfalls schlägt die Funktion fehl. Ein Standard-Desktop ist eine, die eine Anwendung läuft auf, nachdem der Benutzer sich angemeldet hat.
MB_HELP
Fügt eine Hilfeschaltfläche im Meldungsfeld hinzu. Wählen die Schaltfläche Hilfe klicken oder F1 drücken generiert ein Ereignis, Hilfe.
MB_RIGHT
Der Text ist rechtsbündig.
MB_RTLREADING
Zeigt Nachricht und die Beschriftung Text mit rechts-nach-links Leserichtung auf hebräischen und arabischen Systemen.
MB_SETFOREGROUND
Das Meldungsfeld wird das Vordergrundfenster. Intern ruft das System die SetForegroundWindow -Funktion für das Meldungsfeld.
MB_TOPMOST
Das Meldungsfeld wird mit den Fensterstil WS_EX_TOPMOST erstellt.
MB_SERVICE_NOTIFICATION
Windows NT: Der Aufrufer ist ein Dienst benachrichtigt den Benutzer über ein Ereignis. Die Funktion zeigt ein Meldungsfeld auf dem aktuellen active Desktop selbst dann, wenn kein Benutzer am Computer angemeldet ist.

Wenn dieses Flag festgelegt ist, muss der hWnd -Parameter NULL sein. Dies ist also das Meldungsfeld auf einem Desktop anders als der desktop entspricht das hWnd angezeigt werden können.

Für Windows NT, Version 4.0 hat der Wert der MB_SERVICE_NOTIFICATION geändert. Finden Sie unter WINUSER.H für die alten und neuen Werte. Windows NT 4.0 bietet Abwärtskompatibilität für vorhandene Dienstleistungen durch den alten Wert auf den neuen Wert in die Umsetzung der MessageBox und MessageBoxExzuordnen. Diese Zuordnung erfolgt nur für ausführbare Dateien, die eine Versionsnummer, als durch den Linker, weniger als 4,0 gesetzt haben.

Um einen Dienst zu erstellen, der MB_SERVICE_NOTIFICATION verwendet und kann auf Windows NT 3.x und Windows NT 4.0 ausgeführt, haben Sie zwei Möglichkeiten.
  1. Zur Link-Zeit geben Sie eine Versionsnummer kleiner als 4.0; oder
&Nbsp;   2. Zur Verknüpfungszeit-geben Sie Version 4.0. Verwenden Sie zur Laufzeit die GetVersionEx -Funktion die Systemversion überprüfen. Dann, wenn auf Windows NT 3.x, verwenden Sie MB_SERVICE_NOTIFICATION_NT3X; und auf Windows NT 4.0 verwenden MB_SERVICE_NOTIFICATION.

MB_SERVICE_NOTIFICATION_NT3X
Windows NT: Dieser Wert entspricht dem Wert definiert für MB_SERVICE_NOTIFICATION für Windows NT, Version 3.51.

Rückgabewerte

Der Rückgabewert ist 0 (null), wenn es nicht genügend Arbeitsspeicher ist, um das Meldungsfeld zu erstellen.

Wenn die Funktion erfolgreich ist, ist der Rückgabewert einer der folgenden Menüpunkt Werte vom Dialogfeld zurückgegeben:

Wert Bedeutung
IDABORT Abbrechen-Schaltfläche ausgewählt wurde.
IDCANCEL Abbrechen-Schaltfläche wurde gewählt.
IDIGNORE Ignorieren geklickt wurde.
IDNR Keine Schaltfläche ausgewählt wurde.
IDOK OK-Taste ausgewählt wurde.
IDRETRY Wiederholen-Schaltfläche ausgewählt wurde.
IDYES Ja wurde Schaltfläche ausgewählt.

Wenn ein Meldungsfeld eine Schaltfläche Abbrechen verfügt, gibt die Funktion den Wert IDCANCEL, wenn entweder die esc-Taste gedrückt wird oder die Cancel-Taste ist gewählt. Wenn das Meldungsfeld keine Schaltfläche Abbrechen verfügt, hat drücken esc keine Auswirkungen.

Bemerkungen

Wenn Sie verwenden eine System-modales Meldungsfeld angezeigt, um anzugeben, dass das System nicht genügend Speicher, die Zeichenfolgen verweist die LpText und LpCaption Parameter keiner Ressourcendatei entnommen werden sollte, da zum Laden der Ressource fehlschlagen kann.

Wenn eine Anwendung MessageBox Ruft und die Flags MB_ICONHAND und MB_SYSTEMMODAL für den uType -Parameter gibt, zeigt das System das Meldungsfeld resultierende unabhängig vom verfügbaren Arbeitsspeicher. Wenn diese Flags festgelegt sind, wird das System die Länge der der Text im Meldungsfeld auf drei Zeilen beschränkt. Das System wird nicht automatisch die Zeilen im Feld Nachricht, jedoch passen zu brechen, so dass die Message-Zeichenfolge Wagenrückläufe brechen die Linien an den entsprechenden Stellen enthalten, muss.

Wenn Sie eine Message-Box erstellen, während ein Dialogfeld vorhanden ist, verwenden Sie das Handle des Dialogfelds als hWnd -Parameter. Der hWnd -Parameter sollte kein untergeordnetes Fenster, z. B. ein Steuerelement in einem Dialogfeld identifizieren.

Windows 95:Das System unterstützt maximal 16.364 Fenstergriffe.

Windows CE: Windows CE unterstützt die folgenden Formate für den uType -parameter

MB_SYSTEMMODAL

MB_TASKMODAL

MB_HELP

MB_RIGHT

MB_RTLREADING

MB_DEFAULT_DESKTOP_ONLY

MB_SERVICE_NOTIFICATION

MB_USERICON.

Die folgenden zurück, dass Werte nicht unterstützt werden:

IDCLOSE

IDHELP

QuickInfo

&Nbsp; Windows NT: Version 3.1 oder höher erforderlich.
Windows:Erfordert Windows 95 oder höher.
Windows CE:Version 1.0 oder höher benötigt.
Header:In winuser.h deklarierten.
Importieren Bibliothek:Verwenden Sie user32.lib.
Unicode:Als Unicode und ANSI-Versionen auf Windows und Windows NT implementiert.

Siehe auch

Übersicht über Dialogfelder, Dialogfeld Feld Funktionen, FlashWindow, MessageBeep, MessageBoxEx, MessageBoxIndirect, SetForegroundWindow

Index