Freigeben über


MessageBoxIndirectA-Funktion (winuser.h)

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

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 eine schaltfläche Abbrechen verfügt, gibt die Funktion den wert IDCANCEL zurück, wenn entweder die ESC-Taste gedrückt wird 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 null.

Zurückgeben von Code/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.

Bemerkungen

Wenn Sie ein systemmodales Meldungsfeld verwenden, um anzugeben, dass das System nicht genügend Arbeitsspeicher hat, sollten die Zeichenfolgen, auf die durch die lpszText und lpszCaption Member der MSGBOXPARAMS- Struktur verwiesen werden, nicht aus einer Ressourcendatei übernommen werden, da ein Versuch zum Laden der Ressource 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.

Anmerkung

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 Code, der nicht codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 2000 Professional [nur Desktop-Apps]
mindestens unterstützte Server- Windows 2000 Server [nur Desktop-Apps]
Zielplattform- Fenster
Header- winuser.h (enthalten Windows.h)
Library User32.lib
DLL- User32.dll
API-Satz ext-ms-win-ntuser-dialogbox-l1-1-0 (eingeführt in Windows 8)

Siehe auch

Konzeptionelle

Dialogfelder

MSGBOXPARAMS-

MessageBox-

MessageBoxEx-

Referenz-