Share via


EndDialog 함수(winuser.h)

모달 대화 상자를 삭제하여 시스템에서 대화 상자에 대한 모든 처리를 종료합니다.

구문

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

매개 변수

[in] hDlg

형식: HWND

삭제할 대화 상자에 대한 핸들입니다.

[in] nResult

형식: INT_PTR

대화 상자를 만든 함수에서 애플리케이션에 반환할 값입니다.

반환 값

형식: BOOL

함수가 성공하면 반환 값이 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다.

설명

DialogBox,DialogBoxParam, DialogBoxIndirect 및 DialogBoxIndirectParam 함수에서 만든 대화 상자는 EndDialog 함수를 사용하여 제거해야 합니다. 애플리케이션은 대화 상자 프로시저 내에서 EndDialog 를 호출합니다. 함수는 다른 용도로 사용하면 안 됩니다.

대화 상자 프로시저는 WM_INITDIALOG 메시지를 처리하는 동안에도 언제든지 EndDialog를 호출할 수 있습니다. WM_INITDIALOG 처리되는 동안 애플리케이션이 함수를 호출하면 대화 상자가 표시되기 전과 입력 포커스가 설정되기 전에 제거됩니다.

EndDialog 는 대화 상자를 즉시 삭제하지 않습니다. 대신 플래그를 설정하고 대화 상자 프로시저가 컨트롤을 시스템에 반환할 수 있도록 합니다. 시스템은 애플리케이션 큐에서 다음 메시지를 검색하기 전에 플래그를 확인합니다. 플래그가 설정되면 시스템에서 메시지 루프를 종료하고, 대화 상자를 삭제하고, nResult 의 값을 대화 상자를 만든 함수의 반환 값으로 사용합니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 winuser.h(Windows.h 포함)
라이브러리 User32.lib
DLL User32.dll
API 세트 ext-ms-win-ntuser-dialogbox-l1-1-0(Windows 8 도입)

추가 정보

개념

대화 상자

DialogBox

DialogBoxIndirect

DialogBoxIndirectParam

DialogBoxParam

참조

WM_INITDIALOG