Partager via


DialogBoxParamA, fonction (winuser.h)

Crée une boîte de dialogue modale à partir d’une ressource de modèle de boîte de dialogue. Avant d’afficher la boîte de dialogue, la fonction transmet une valeur définie par l’application à la procédure de boîte de dialogue en tant que paramètre lParam du message WM_INITDIALOG. Une application peut utiliser cette valeur pour initialiser les contrôles de boîte de dialogue.

Syntaxe

INT_PTR DialogBoxParamA(
  [in, optional] HINSTANCE hInstance,
  [in]           LPCSTR    lpTemplateName,
  [in, optional] HWND      hWndParent,
  [in, optional] DLGPROC   lpDialogFunc,
  [in]           LPARAM    dwInitParam
);

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

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.

[in] dwInitParam

Type : LPARAM

Valeur à transmettre à la boîte de dialogue dans le paramètre lParam du message WM_INITDIALOG.

Valeur de retour

Type : INT_PTR

Si la fonction réussit, la valeur de retour est la valeur du paramètre nResult spécifié dans l’appel à la fonction EndDialog utilisée pour arrêter la boîte de dialogue.

Si la fonction échoue, car le paramètre hWndParent n’est pas valide, la valeur de retour est égale à zéro. La fonction retourne zéro dans ce cas pour la compatibilité avec les versions précédentes de Windows. Si la fonction échoue pour une autre raison, la valeur de retour est –1. Pour obtenir des informations d’erreur étendues, appelez GetLastError.

Remarques

La fonction DialogBoxParam utilise la fonction CreateWindowEx pour créer la boîte de dialogue. DialogBoxParam 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 (que le modèle spécifie le style WS_VISIBLE), désactive la fenêtre propriétaire et démarre sa propre boucle de message pour récupérer et distribuer des messages pour la boîte de dialogue.

Lorsque la procédure de boîte de dialogue appelle la fonction EndDialog , DialogBoxParam détruit la boîte de dialogue, met fin à la boucle de message, active la fenêtre propriétaire (si précédemment activée) et retourne le paramètre nResult spécifié par la procédure de boîte de dialogue lorsqu’elle a appelé EndDialog.

Note

L’en-tête winuser.h définit DialogBoxParam 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
ensemble d’API ext-ms-win-ntuser-dialogbox-l1-1-1 (introduit dans Windows 8.1)

Voir aussi

conceptuelle

CreateWindowEx

boîtes de dialogue

dialogBox

DialogBoxIndirect

DialogBoxIndirectParam

dialogProc

EndDialog

MAKEINTRESOURCE

de référence

WM_INITDIALOG

WM_SETFONT