Freigeben über


CreateDialogA-Makro (winuser.h)

Erstellt ein Dialogfeld ohne Modus aus einer Ressourcenressource für Dialogfeldvorlagen. Das CreateDialog Makro verwendet die CreateDialogParam--Funktion.

Syntax

void CreateDialogA(
  [in, optional]  hInstance,
  [in]            lpName,
  [in, optional]  hWndParent,
  [in, optional]  lpDialogFunc
);

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] lpName

Typ: LPCTSTR-

Die Dialogfeldvorlage. Dieser Parameter ist entweder der Zeiger auf eine mit Null beendete Zeichenfolge, die den Namen der Dialogfeldvorlage oder einen ganzzahligen Wert angibt, der den Ressourcenbezeichner der Dialogfeldvorlage angibt. Wenn der Parameter einen Ressourcenbezeichner angibt, muss das Wort mit hoher Reihenfolge null sein, und das 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-.

Rückgabewert

Nichts

Bemerkungen

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

Nachdem CreateDialog- zurückgegeben wurde, zeigt die Anwendung das Dialogfeld (sofern es noch nicht 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 Meldungsschleife für das Dialogfeld die IsDialogMessage--Funktion aufrufen.

Beispiele

Ein Beispiel finden Sie unter Erstellen eines Dialogfelds ohne Modus.

Anmerkung

Der winuser.h-Header definiert CreateDialog 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 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

Siehe auch

Konzeptionelle

CreateDialogIndirect-

CreateDialogIndirectParam-

CreateDialogParam-

CreateWindowEx-

DestroyWindow

Dialogfelder

DialogBox-

DialogProc-

IsDialogMessage-

Referenz-

ShowWindow-

WM_INITDIALOG

WM_SETFONT