Partager via


Fonction EndDialog (winuser.h)

Détruit une boîte de dialogue modale, ce qui entraîne la fin du traitement de la boîte de dialogue par le système.

Syntaxe

BOOL EndDialog(
  [in] HWND    hDlg,
  [in] INT_PTR nResult
);

Paramètres

[in] hDlg

Type : HWND

Handle de la boîte de dialogue à détruire.

[in] nResult

Type : INT_PTR

Valeur à retourner à l’application à partir de la fonction qui a créé la boîte de dialogue.

Valeur retournée

Type : BOOL

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

Remarques

Les boîtes de dialogue créées par les fonctions DialogBox, DialogBoxParam, DialogBoxIndirect et DialogBoxIndirectParam doivent être détruites à l’aide de la fonction EndDialog . Une application appelle EndDialog à partir de la procédure de boîte de dialogue ; la fonction ne doit pas être utilisée à d’autres fins.

Une procédure de boîte de dialogue peut appeler EndDialog à tout moment, même pendant le traitement du message WM_INITDIALOG . Si votre application appelle la fonction alors que WM_INITDIALOG est en cours de traitement, la boîte de dialogue est détruite avant d’être affichée et avant que le focus d’entrée ne soit défini.

EndDialog ne détruit pas immédiatement la boîte de dialogue. Au lieu de cela, il définit un indicateur et permet à la procédure de boîte de dialogue de retourner le contrôle au système. Le système vérifie l’indicateur avant de tenter de récupérer le message suivant à partir de la file d’attente d’application. Si l’indicateur est défini, le système met fin à la boucle des messages, détruit la boîte de dialogue et utilise la valeur dans nResult comme valeur de retour de la fonction qui a créé la boîte de dialogue.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winuser.h (inclure Windows.h)
Bibliothèque User32.lib
DLL User32.dll
Ensemble d’API ext-ms-win-ntuser-dialogbox-l1-1-0 (introduit dans Windows 8)

Voir aussi

Conceptuel

Boîtes de dialogue

DialogBox

DialogBoxIndirect

DialogBoxIndirectParam

DialogBoxParam

Référence

WM_INITDIALOG