다음을 통해 공유


CreateDialogA 매크로(winuser.h)

대화 상자 템플릿 리소스에서 모덜리스 대화 상자를 만듭니다. CreateDialog 매크로는 CreateDialogParam 함수를 사용합니다.

구문

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

매개 변수

[in, optional] hInstance

형식: HINSTANCE

대화 상자 템플릿이 포함된 모듈에 대한 핸들입니다. 이 매개 변수가 NULL이면 현재 실행 파일이 사용됩니다.

[in] lpName

형식: LPCTSTR

대화 상자 템플릿입니다. 이 매개 변수는 대화 상자 템플릿의 이름을 지정하는 null로 끝나는 문자열에 대한 포인터이거나 대화 상자 템플릿의 리소스 식별자를 지정하는 정수 값입니다. 매개 변수가 리소스 식별자를 지정하는 경우 상위 단어는 0이어야 하며 하위 단어에는 식별자가 포함되어야 합니다. MAKEINTRESOURCE 매크로를 사용하여 이 값을 만들 수 있습니다.

[in, optional] hWndParent

형식: HWND

대화 상자를 소유하는 창에 대한 핸들입니다.

[in, optional] lpDialogFunc

형식: DLGPROC

대화 상자 프로시저에 대한 포인터입니다. 대화 상자 프로시저에 대한 자세한 내용은 DialogProc을 참조하세요.

반환 값

없음

설명

CreateDialog 함수는 CreateWindowEx 함수를 사용하여 대화 상자를 만듭니다. 그런 다음 CreateDialogWM_INITDIALOG 메시지(템플릿에서 DS_SETFONT 또는 DS_SHELLFONT 스타일을 지정하는 경우 WM_SETFONT 메시지)를 대화 상자 프로시저로 보냅니다. 템플릿이 WS_VISIBLE 스타일을 지정하는 경우 함수는 대화 상자를 표시합니다. 마지막으로 CreateDialog 는 대화 상자에 창 핸들을 반환합니다.

CreateDialog가 반환되면 애플리케이션은 ShowWindow 함수를 사용하여 대화 상자(아직 표시되지 않은 경우)를 표시합니다. 애플리케이션은 DestroyWindow 함수를 사용하여 대화 상자를 삭제합니다. 키보드 탐색 및 기타 대화 상자 기능을 지원하려면 대화 상자의 메시지 루프가 IsDialogMessage 함수를 호출해야 합니다.

예제

예를 들어 모덜리스 대화 상자 만들기를 참조하세요.

참고

winuser.h 헤더는 CREATEDialog를 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 winuser.h(Windows.h 포함)
라이브러리 User32.lib
DLL User32.dll

추가 정보

개념

CreateDialogIndirect

CreateDialogIndirectParam

CreateDialogParam

CreateWindowEx

DestroyWindow

대화 상자

DialogBox

DialogProc

IsDialogMessage

참조

Showwindow

WM_INITDIALOG

WM_SETFONT