Partager via


Macro CreateDialogW (winuser.h)

Crée une boîte de dialogue sans mode à partir d’une ressource de modèle de boîte de dialogue. La macro CreateDialog utilise la fonction CreateDialogParam.

Syntaxe

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

Paramètres

[in, optional] hInstance

Type : HINSTANCE

Handle du module qui contient le modèle de boîte de dialogue. Si ce paramètre a la valeur NULL, l’exécutable actuel est utilisé.

[in] lpName

Type : LPCTSTR

Modèle de boîte de dialogue. Ce paramètre est soit le pointeur vers une chaîne de caractères terminée par null qui spécifie le nom du modèle de boîte de dialogue, soit une valeur entière qui spécifie l’identificateur de ressource du modèle de boîte de dialogue. Si le paramètre spécifie un identificateur de ressource, son mot de classement élevé doit être égal à zéro et son mot de bas ordre doit contenir l’identificateur. Vous pouvez utiliser la macro MAKEINTRESOURCE pour créer cette valeur.

[in, optional] hWndParent

Type : HWND

Handle de la fenêtre propriétaire de la boîte de dialogue.

[in, optional] lpDialogFunc

Type : DLGPROC

Pointeur vers la procédure de boîte de dialogue. Pour plus d’informations sur la procédure de boîte de dialogue, consultez DialogProc.

Valeur de retour

Aucun

Remarques

La fonction CreateDialog utilise la fonction CreateWindowEx pour créer la boîte de dialogue. CreateDialog envoie ensuite un message WM_INITDIALOG (et un message WM_SETFONT si le modèle spécifie le style DS_SETFONT ou DS_SHELLFONT) à la procédure de boîte de dialogue. La fonction affiche la boîte de dialogue si le modèle spécifie le style WS_VISIBLE. Enfin, CreateDialog retourne la poignée de fenêtre dans la boîte de dialogue.

Après CreateDialog retourne, l’application affiche la boîte de dialogue (si elle n’est pas déjà affichée) à l’aide de la fonction ShowWindow. L’application détruit la boîte de dialogue à l’aide de la fonction DestroyWindow. Pour prendre en charge la navigation au clavier et d’autres fonctionnalités de boîte de dialogue, la boucle de message de la boîte de dialogue doit appeler la fonction IsDialogMessage.

Exemples

Pour obtenir un exemple, consultez création d’une boîte de dialogue sans mode.

Note

L’en-tête winuser.h définit CreateDialog comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
serveur minimum pris en charge Windows 2000 Server [applications de bureau uniquement]
plateforme cible Windows
d’en-tête winuser.h (include Windows.h)
bibliothèque User32.lib
DLL User32.dll

Voir aussi

conceptuelle

CreateDialogIndirect

CreateDialogIndirectParam

CreateDialogParam

CreateWindowEx

DestroyWindow

boîtes de dialogue

dialogBox

dialogProc

IsDialogMessage

de référence

showWindow

WM_INITDIALOG

WM_SETFONT