DialogBoxParamA-Funktion (winuser.h)
Erstellt ein modales Dialogfeld aus einer Dialogfeldvorlagenressource. Vor dem Anzeigen des Dialogfelds übergibt die Funktion einen von der Anwendung definierten Wert als lParam-Parameter der WM_INITDIALOG-Nachricht an die Dialogfeldprozedur. Eine Anwendung kann diesen Wert verwenden, um Dialogfeldsteuerelemente zu initialisieren.
Syntax
INT_PTR DialogBoxParamA(
[in, optional] HINSTANCE hInstance,
[in] LPCSTR lpTemplateName,
[in, optional] HWND hWndParent,
[in, optional] DLGPROC lpDialogFunc,
[in] LPARAM dwInitParam
);
Parameter
[in, optional] hInstance
Typ: HINSTANCE
Ein Handle für das Modul, das die Dialogfeldvorlage enthält. Wenn dieser Parameter NULL ist, wird die aktuelle ausführbare Datei verwendet.
[in] lpTemplateName
Typ: LPCTSTR
Die Dialogfeldvorlage. Dieser Parameter ist entweder der Zeiger auf eine NULL-Zeichenfolge, die den Namen der Dialogfeldvorlage angibt, oder ein ganzzahliger Wert, der den Ressourcenbezeichner der Dialogfeldvorlage angibt. Wenn der Parameter einen Ressourcenbezeichner angibt, muss das Wort mit hoher Ordnung null sein, und sein Wort mit niedriger Reihenfolge muss den Bezeichner enthalten. Sie können das MAKEINTRESOURCE-Makro verwenden, um diesen Wert zu erstellen.
[in, optional] hWndParent
Typ: HWND
Ein Handle für das Fenster, das das Dialogfeld besitzt.
[in, optional] lpDialogFunc
Typ: DLGPROC
Ein Zeiger auf die Dialogfeldprozedur. Weitere Informationen zur Dialogfeldprozedur finden Sie unter DialogProc.
[in] dwInitParam
Typ: LPARAM
Der Wert, der im lParam-Parameter der WM_INITDIALOG Nachricht an das Dialogfeld übergeben werden soll.
Rückgabewert
Typ: INT_PTR
Wenn die Funktion erfolgreich ist, ist der Rückgabewert der Wert des nResult-Parameters , der im Aufruf der EndDialog-Funktion angegeben ist, die zum Beenden des Dialogfelds verwendet wird.
Wenn die Funktion fehlschlägt, weil der hWndParent-Parameter ungültig ist, ist der Rückgabewert 0. Die Funktion gibt in diesem Fall aus Gründen der Kompatibilität mit früheren Versionen von Windows null zurück. Wenn die Funktion aus einem anderen Grund fehlschlägt, ist der Rückgabewert –1. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.
Hinweise
Die DialogBoxParam-Funktion verwendet die CreateWindowEx-Funktion , um das Dialogfeld zu erstellen. DialogBoxParam sendet dann eine WM_INITDIALOG Nachricht (und eine WM_SETFONT Nachricht, wenn die Vorlage den DS_SETFONT oder DS_SHELLFONT Stil angibt) an die Dialogfeldprozedur. Die Funktion zeigt das Dialogfeld an (unabhängig davon, ob die Vorlage das WS_VISIBLE-Format angibt), deaktiviert das Besitzerfenster und startet eine eigene Nachrichtenschleife, um Nachrichten für das Dialogfeld abzurufen und zu senden.
Wenn die Dialogfeldprozedur die EndDialog-Funktion aufruft, zerstört DialogBoxParam das Dialogfeld, beendet die Nachrichtenschleife, aktiviert das Besitzerfenster (sofern zuvor aktiviert), und gibt den nResult-Parameter zurück, der von der Dialogfeldprozedur beim Aufruf von EndDialog angegeben wurde.
Hinweis
Der winuser.h-Header definiert DialogBoxParam als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante 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
Anforderung | Wert |
---|---|
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-1 (eingeführt in Windows 8.1) |
Siehe auch
Konzept
Referenz