CreateDialogIndirect

CreateDialogIndirect 매크로 메모리에 있는 대화 상자 템플릿에서 모덜리스 대화 상자를 만듭니다. CreateDialogIndirect 매크로 CreateDialogIndirectParam 함수를 사용 하 여.

HWND CreateDialogIndirect (  HINSTANCE  hInstance, / / 응용 프로그램 인스턴스에 대 한 핸들LPCDLGTEMPLATElpTemplate, / / 포인터 대화 상자 템플릿HWNDhWndParent, / / 소유자 창에 대 한 핸들DLGPROClpDialogFunc / / 포인터 대화 상자 프로시저);
 

매개 변수

hInstance
대화 상자를 만드는 모듈의 인스턴스를 식별.
lpTemplate
CreateDialogIndirect 대화 상자를 사용 하 여 서식 파일을 포함 하는 전역 메모리 개체에 포인터입니다. 대화 상자 템플릿 헤더 뒤에 하나 이상의 추가 데이터 블록의 각 대화 상자에 있는 컨트롤을 설명 하는 대화 상자를 설명 하는 이루어져 있다. 표준 형식이 나 확장된 형식 템플릿을 사용할 수 있습니다.

표준 서식 파일에서 헤더 뒤에 추가 가변 길이 배열 DLGTEMPLATE 구조입니다. 각 컨트롤에 대 한 데이터 추가 가변 길이 배열 뒤 DLGITEMTEMPLATE 구조 구성.

확장 된 대화 상자 서식 파일에서 헤더 DLGTEMPLATEEX 형식을 사용 하 고 컨트롤 정의 DLGITEMTEMPLATEEX 형식을 사용 하 여.

시작 대화 상자에 사용 되는 서식 파일을 무료로 할 수 CreateDialogIndirect 반환 후.

hWndParent
대화 상자를 소유 하 고 있는 창을 식별합니다.
lpDialogFunc
대화 상자 프로시저에 포인터입니다. 대화 상자 프로시저에 대 한 자세한 내용은 다음 웹 사이트를 참조 하십시오. DialogProc.

반환 값

함수가 성공 하면 반환 값은 대화 상자 창 핸들.

함수가 실패 하면 반환 값은 NULL입니다. 확장 된 오류 정보를 얻을 하려면 GetLastError.

주의

CreateDialogIndirect 매크로 CreateWindowEx 함수를 사용 하 여 대화 상자를 만듭니다. CreateDialogIndirect 는 다음 대화 상자 프로시저를 WM_INITDIALOG 메시지를 보냅니다. 서식 파일 DS_SETFONT 스타일을 지정 하는 경우 함수 WM_SETFONT 메시지를 대화 상자 프로시저를 또한 보냅니다. 함수 템플릿의 WS_VISIBLE 스타일을 지정 하는 경우 대화 상자를 표시 합니다. CreateDialogIndirect 대화 상자 창 핸들을 반환 하는 마지막으로,.

CreateDialogIndirect 반환 된 후에 (해당 되는 경우 이미 표시 되어) 대화 상자를 표시 하려면 ShowWindow 함수를 사용할 수 있습니다. 대화 상자를 파괴 DestroyWindow 함수 사용.

표준 대화 상자 템플릿을 DLGTEMPLATE 구조와 DLGITEMTEMPLATE 구조의 각 DWORD 경계에 정렬 되어야 합니다. DLGITEMTEMPLATE 구조를 따르는 생성 데이터 배열은 또한 DWORD 경계에 정렬 되어야 합니다. 모든 서식 파일에 다른 가변 길이 배열 해야 합니다 정렬 되어야 합니다 단어 경계에서.

확장 된 대화 상자 템플릿을 DLGTEMPLATEEX 헤더 및 DLGITEMTEMPLATEEX 컨트롤 정의의 각 DWORD 경계에 정렬 되어야 합니다. 생성 데이터 배열, 어떤 DLGITEMTEMPLATEEX 구조를 따르는 또한 DWORD 경계에 정렬 해야 하는 경우. 단어 경계에 정렬 해야 합니다 모든 서식 파일에 다른 가변 길이 배열.

대화 상자 서식 대화 상자 및 단추, 제목 등의 모든 문자 문자열은 유니코드 문자열 이어야 합니다. Windows 및 Windows NT에서 작동 하는 코드를 작성 하려면 MultiByteToWideChar 함수를 사용 하 여 이러한 유니코드 문자열 생성.

Windows 95 이상:시스템은 대화 상자 템플릿 당 255 컨트롤의 최대를 지원할 수 있습니다. 대화 상자에 255 개 이상의 컨트롤을 배치 하려면 서식 파일에 배치 하는 것 보다는 WM_INITDIALOG 메시지 처리기에서 컨트롤을 만들려면.

Windows CE: . LpTemplate 매개 변수에서 참조 하는 대화 상자 템플릿 DLGTEMPLATE 구조에서 지원 되는 모든 스타일

QuickInfo

nbsp;?Windows &NT: 버전 3.1 이상이 필요 합니다.
Windows:Windows 95 이상이 필요합니다.
Windows CE:버전 1.0 이상이 필요합니다.
헤더:Winuser.h에서 선언합니다.
가져오기 라이브러리:User32.lib를 사용 합니다.
유니코드:Windows NT에서 유니코드와 ANSI 버전으로 구현.

참고 항목

대화 상자 개요, 대화 상자 함수, CreateDialog, CreateDialogIndirectParam, CreateDialogParam, CreateWindowEx DestroyWindow, DialogProc, DLGITEMTEMPLATE, DLGITEMTEMPLATEEX, DLGTEMPLATE, DLGTEMPLATEEX, MultiByteToWideChar, ShowWindow WM_INITDIALOG WM_SETFONT

 

Index