DialogBoxIndirectParam

DialogBoxIndirectParam 함수는 메모리에 있는 대화 상자 템플릿에서 모달 대화 상자를 만듭니다. 대화 상자를 표시 하기 전에 함수를 응용 프로그램 정의 값 대화 상자 프로시저에 변수로 전달 WM_INITDIALOG 메시지의 lParam 매개 변수. 응용 프로그램 초기화 대화 상자 컨트롤에이 값을 사용할 수 있습니다.

DialogBoxIndirectParam ( int HINSTANCE  hInstance, / / 응용 프로그램 인스턴스에 대 한 핸들LPCDLGTEMPLATEhDialogTemplate,  / / 대화 상자 템플릿 식별HWNDhWndParent, / / 소유자 창에 대 한 핸들DLGPROClpDialogFunc, / / 포인터 대화 상자 프로시저LPARAMdwInitParam / / 초기화 값);
 

매개 변수

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

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

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

hWndParent
대화 상자를 소유 하 고 있는 창을 식별합니다.
lpDialogFunc
대화 상자 프로시저에 포인터입니다. 대화 상자 프로시저에 대 한 자세한 내용은 다음 웹 사이트를 참조 하십시오. DialogProc.
dwInitParam
WM_INITDIALOG 메시지의 lParam 매개 변수 대화 상자에 전달 하는 값을 지정 합니다.

반환 값

함수가 성공 하면 반환 값은 대화 상자를 종료 하는 데 사용 된 EndDialog 함수 호출에 지정 된 nResult 매개 변수.

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

주의

DialogBoxIndirectParam 함수 CreateWindowEx 함수를 사용 하 여 대화 상자를 만듭니다. DialogBoxIndirectParam 는 다음 대화 상자 프로시저를 WM_INITDIALOG 메시지를 보냅니다. 서식 파일 DS_SETFONT 스타일을 지정 하는 경우 함수 WM_SETFONT 메시지를 대화 상자 프로시저를 또한 보냅니다. 함수 (여부를 서식 지정 WS_VISIBLE 스타일) 관계 없이 대화 상자가 표시 됩니다, 그리고 소유자 창이 비활성화 및 검색 대화 상자에 대 한 메시지를 전달 하는 자체 메시지 루프를 시작.

대화 상자 프로시저 EndDialog 함수를 호출 하는 경우 DialogBoxIndirectParam 파괴 하는 대화 상자, 메시지 루프를 종료, 소유자 창 (해당 되는 경우 이전에 사용) 있으며 EndDialog 호출 될 때 대화 상자 프로시저에서 지정 된 nResult 매개 변수를 반환 합니다.

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

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

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

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

Windows CE: 사용자가 대화 상자에 입력된 포커스가 있는 동안 ALT + H를 누르면, 시스템이 WM_HELP 메시지가 대화 프로시저를 게시 합니다. 응용 프로그램 대화 상자에 대 한 상황에 맞는 도움말을 표시 하 여이 메시지에 응답 해야 한다.

다른 대화 상자 제한에 대 한 다음 웹 사이트를 참조 하십시오. CreateDialogIndirectParam.

QuickInfo

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

참고 항목

대화 상자 개요, 대화 상자 함수, CreateWindowEx, DialogBox, DialogBoxIndirect, DialogBoxParam, DialogProc, DLGITEMTEMPLATE, DLGITEMTEMPLATEEX, DLGTEMPLATE, DLGTEMPLATEEX, EndDialog, MultiByteToWideChar, WM_INITDIALOG, WM_SETFONT

 

Index