Share via


MessageBoxIndirectA-Funktion (winuser.h)

Erstellt, zeigt ein Meldungsfeld an und betreibt es. Das Meldungsfeld enthält anwendungsdefinierten Nachrichtentext und -titel, ein beliebiges Symbol und eine beliebige Kombination vordefinierter Drucktasten.

Syntax

int MessageBoxIndirectA(
  [in] const MSGBOXPARAMSA *lpmbp
);

Parameter

[in] lpmbp

Typ: const LPMSGBOXPARAMS

Ein Zeiger auf eine MSGBOXPARAMS-Struktur , die Informationen enthält, die zum Anzeigen des Meldungsfelds verwendet werden.

Rückgabewert

Typ: int

Wenn die Funktion erfolgreich ist, ist der Rückgabewert einer der folgenden Menüelementwerte.

Wenn ein Meldungsfeld über die Schaltfläche Abbrechen verfügt, gibt die Funktion den IDCANCEL-Wert zurück, wenn entweder die ESC-Taste gedrückt oder die Schaltfläche Abbrechen ausgewählt ist. Wenn das Meldungsfeld keine Schaltfläche Abbrechen aufweist, hat das Drücken von ESC keine Auswirkung.

Wenn nicht genügend Arbeitsspeicher zum Erstellen des Meldungsfelds vorhanden ist, ist der Rückgabewert 0.

Rückgabecode/-wert BESCHREIBUNG
IDABORT
3
Die Schaltfläche Abbrechen wurde ausgewählt.
IDCANCEL
2
Die Schaltfläche Abbrechen wurde ausgewählt.
IDCONTINUE
11
Die Schaltfläche Weiter wurde ausgewählt.
IDIGNORE
5
Die Schaltfläche Ignorieren wurde ausgewählt.
IDNO
7
Die Schaltfläche Nein wurde ausgewählt.
IDOK
1
Die Schaltfläche OK wurde ausgewählt.
IDRETRY
4
Die Schaltfläche Wiederholen wurde ausgewählt.
IDTRYAGAIN
10
Die Schaltfläche Erneut versuchen wurde ausgewählt.
IDYES
6
Die Schaltfläche Ja wurde ausgewählt.

Hinweise

Wenn Sie ein systemmodales Meldungsfeld verwenden, um anzugeben, dass das System wenig Arbeitsspeicher aufweist, sollten die Zeichenfolgen, auf die die Elemente lpszText und lpszCaption der MSGBOXPARAMS-Struktur verweisen, nicht aus einer Ressourcendatei entnommen werden, da ein Versuch, die Ressource zu laden, möglicherweise fehlschlägt.

Wenn Sie ein Meldungsfeld erstellen, während ein Dialogfeld vorhanden ist, verwenden Sie ein Handle für das Dialogfeld als hWnd-Parameter . Der hWnd-Parameter sollte kein untergeordnetes Fenster identifizieren, z. B. ein Steuerelement in einem Dialogfeld.

Hinweis

Der winuser.h-Header definiert MessageBoxIndirect als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h (einschließlich Windows.h)
Bibliothek User32.lib
DLL User32.dll
APIs ext-ms-win-ntuser-dialogbox-l1-1-0 (in Windows 8 eingeführt)

Siehe auch

Konzept

Dialogfelder

MSGBOXPARAMS

Messagebox

MessageBoxEx

Referenz