Share via


CreateDialogParamA-Funktion (winuser.h)

Erstellt ein modusloses Dialogfeld aus einer Dialogfeldvorlagenressource. Vor dem Anzeigen des Dialogfelds übergibt die Funktion einen anwendungsdefinierten Wert als lParam-Parameter der WM_INITDIALOG Meldung an die Dialogfeldprozedur. Eine Anwendung kann diesen Wert verwenden, um Dialogfeldsteuerelemente zu initialisieren.

Syntax

HWND CreateDialogParamA(
  [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-endende 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 wort mit niedriger Ordnung 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 an die Dialogfeldprozedur im lParam-Parameter in der WM_INITDIALOG Meldung übergeben werden soll.

Rückgabewert

Typ: HWND

Wenn die Funktion erfolgreich ist, ist der Rückgabewert das Fensterhandle für das Dialogfeld.

Wenn bei der Funktion ein Fehler auftritt, ist der Rückgabewert NULL. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Die CreateDialogParam-Funktion verwendet die CreateWindowEx-Funktion , um das Dialogfeld zu erstellen. CreateDialogParam sendet dann eine WM_INITDIALOG-Nachricht (und eine WM_SETFONT Meldung, wenn die Vorlage die DS_SETFONT oder DS_SHELLFONT-Formatvorlage an die Dialogfeldprozedur angibt. Die Funktion zeigt das Dialogfeld an, wenn die Vorlage den WS_VISIBLE Stil angibt. Schließlich gibt CreateDialogParam das Fensterhandle des Dialogfelds zurück.

Nach der Rückgabe von CreateDialogParam zeigt die Anwendung das Dialogfeld (sofern es nicht bereits angezeigt wird) mithilfe der ShowWindow-Funktion an. Die Anwendung zerstört das Dialogfeld mithilfe der DestroyWindow-Funktion . Um die Tastaturnavigation und andere Dialogfeldfunktionen zu unterstützen, muss die Nachrichtenschleife für das Dialogfeld die IsDialogMessage-Funktion aufrufen.

Hinweis

Der winuser.h-Header definiert CreateDialogParam 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
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 (windows.h einschließen)
Bibliothek User32.lib
DLL User32.dll
APIs ext-ms-win-ntuser-dialogbox-l1-1-0 (eingeführt in Windows 8)

Siehe auch

Konzept

CreateDialog

CreateDialogIndirect

CreateDialogIndirectParam

Createwindowex

DestroyWindow

Dialogfelder

DialogProc

IsDialogMessage

MAKEINTRESOURCE

Referenz

Showwindow

WM_INITDIALOG

WM_SETFONT