DLGTEMPLATEEX 구조는 어떤 표준 헤더 파일에 정의 되지 않습니다. 구조 정의 대화 상자에 대 한 확장 된 서식 파일의 형식을 설명 하기 위해 여기 제공 됩니다.
확장 된 대화 상자 서식 파일 대화 상자에 설명 하 고 대화 상자에서 컨트롤의 번호를 지정 하는 DLGTEMPLATEEX 헤더와 함께 시작 합니다. 대화 상자에서 각 컨트롤에 대 한 확장된 대화 상자 템플릿에 DLGITEMTEMPLATEEX 형식을 사용 하 여 컨트롤을 설명 하는 데이터 블록.
typedef struct {단어 dlgVer; 단어 서명; DWORD helpID; DWORD exStyle; DWORD 스타일; WORD cDlgItems; 짧은 x; 짧은 y; 짧은 cx; 짧은 cy; sz_Or_Ord 메뉴; / / 이름 또는 메뉴 리소스의 서 수 sz_Or_Ord windowClass; / / 이름 또는 창 클래스의 서 수 WCHAR 제목 [titleLen]; / / 문자열 대화 상자 제목 짧은 pointsize; / / DS_SETFONT 플래그를 설정 하는 경우에 짧은 무게; / / DS_SETFONT 플래그를 설정 하는 경우에 짧은 bItalic; / / DS_SETFONT 플래그를 설정 하는 경우에 WCHAR 글꼴 [fontLen]; / / 서체 이름, DS_SETFONT을 설정 하는 경우 } DLGTEMPLATEEX
| 값 | 의미 |
|---|---|
| DS_3DLOOK | Nonbold 글꼴 대화 상자를 제공 하 고 대화 상자에 컨트롤 창 주위 3 차원 테두리를 그립니다. DS_3DLOOK 스타일 이전 Windows 95 또는 Windows NT 4.0 시스템 버전에 대 한 컴파일된 하는 Win32 기반 응용 프로그램에만 필요 합니다. 시스템이 자동으로 시스템의 현재 버전에 대 한 컴파일된 응용 프로그램에서 만든 대화 상자 3 차원 모양을 적용합니다. |
| DS_ABSALIGN | 대화 상자의 좌표는 화면 좌표를 나타냅니다. 이 스타일이 지정 되지 않은 경우 시스템 취급 그들 클라이언트 좌표. |
| DS_CENTER | 대화 상자에 작업 영역; 센터 하지 용지함에 의해 가려진 영역, 즉. |
| DS_CENTERMOUSE | 대화 상자에 마우스 커서를 중심. |
| DS_CONTEXTHELP | 대화 상자의 제목 표시줄에 있는 물음표를 포함합니다. 클릭할 때 물음표 포인터로 물음표 커서 변경. 사용자는 다음 대화 상자에서 컨트롤을 클릭 하면 컨트롤이 WM_HELP 메시지가 받습니다. 컨트롤 대화 상자 프로시저를 호출 해야 하는 메시지를 전달 해야 합니다 HELP_WM_HELP 명령을 사용 하 여 WinHelp 함수. 도움말 응용 프로그램에 일반적으로 해당 컨트롤에 대 한 도움말을 포함 하는 팝업 창이 표시 됩니다. 참고 DS_CONTEXTHELP 자리 표시자 일 뿐입니다. 대화 상자를 만들 때 시스템 DS_CONTEXTHELP에 대 한 확인 및, 경우, 확장된 스타일 대화 상자에 WS_EX_CONTEXTHELP를 추가 합니다. WS_MAXIMIZEBOX 또는 WS_MINIMIZEBOX 스타일을 WS_EX_CONTEXTHELP 스타일을 사용할 수 없습니다. |
| DS_CONTROL | 속성 시트에서 페이지 처럼 다른 대화 상자의 자식 창으로 잘 작동 되는 대화 상자를 만듭니다. 이 스타일을 자식 대화 상자의 컨트롤 창 간에 탭, 액셀러레이터 키를 사용 하 여 사용자 허용. |
| DS_FIXEDSYS | 기본 SYSTEM_FONT 대신 SYSTEM_FIXED_FONT를 사용 하 여 대화 상자를 발생 합니다. SYSTEM_FIXED_FONT은 호환-3.0 보다 이전 Windows 버전에서 시스템 글꼴 고정 폭 글꼴. |
| DS_LOCALEDIT | 16 비트 응용 프로그램에만 적용 됩니다. 이 스타일 응용 프로그램의 데이터 세그먼트에서 메모리 할당 대화 상자에서 편집 컨트롤을 지시 합니다. 그렇지 않으면 편집 전역 메모리 개체에서 저장소를 할당 하는 컨트롤. |
| DS_MODALFRAME | WS_CAPTION 및 WS_SYSMENU 스타일을 지정 하 여 제목 표시줄 및 시스템 메뉴와 결합 될 수 있는 모달 대화 상자 프레임을 사용 하 여 대화 상자를 만듭니다. |
| DS_NOFAILCREATE | Windows 95: 오류가 발생 하는 경우에 대화 상자를 만듭니다-예를 들어, 자식 창을 만들 수 없습니다 또는 시스템 편집 컨트롤에 대 한 특별 한 데이터 세그먼트를 만들 수 없습니다. |
| DS_NOIDLEMSG | 시스템 것 이다 그렇지 않으면 보내기 대화 상자의 소유자 대화 상자가 표시 되는 동안 WM_ENTERIDLE 메시지 억제. |
| DS_SETFONT | 확장 된 대화 상자 템플릿 DLGTEMPLATEEX 헤더 포함 4 명의 추가 멤버 (pointsize, 무게, bItalic및 글꼴) 클라이언트 영역 및 대화 상자 컨트롤의 텍스트에 사용할 글꼴을 설명 하는 나타냅니다. 만약에 가능 하다 면, 시스템이이 구성원에 지정 된 값에 따라 글꼴을 만듭니다. 다음 시스템 전달 글꼴의 핸들 대화 상자와 각 컨트롤 WM_SETFONT 메시지 보내. 확장 된 대화 상자 템플릿을이 스타일이 지정 되지 않은 경우 pointsize, 무게, bItalic및 글꼴 멤버를 포함 하지. |
| DS_SETFOREGROUND | 로 인해 SetForegroundWindow 함수를 사용 하 여 전경 대화 상자 상태로 시스템. |
| DS_SYSMODAL | 이 스타일은 무용지물이 고 이전 버전의 Windows와의 호환성을 위해 포함 됩니다. 이 스타일을 지정 하는 경우 시스템 WS_EX_TOPMOST 스타일 대화 상자를 만듭니다. 이 스타일을 DS_CONTROL 스타일을 결합 하지 마십시오. |
CreateDialogIndirectParam 및 DialogBoxIndirectParam 함수와 CreateDialogIndirect 및 DialogBoxIndirect 매크로에 표준 대화 상자 서식 파일 대신 확장 된 대화 상자 템플릿을 사용할 수 있습니다. 표준 대화 상자 템플릿을 DLGTEMPLATE 및 DLGITEMTEMPLATE 구조를 사용 하 여.
확장 된 대화 상자 템플릿 DLGTEMPLATEEX 헤더를 다음과 같은 대화 상자 컨트롤을 설명 하는 하나 이상의 DLGITEMTEMPLATEEX 구조입니다. 서식 파일에서 DLGITEMTEMPLATEEX 구조체의 수를 지정 하는 cDlgItems 멤버.
서식 파일에서 각 DLGITEMTEMPLATEEX 구조는 DWORD 경계에 정렬 되어야 합니다. 스타일 멤버 DS_SETFONT 스타일을 지정 하는 경우 첫 번째 DLGITEMTEMPLATEEX 구조는 글꼴 문자열 후 첫 번째 DWORD 경계에 시작 합니다. 제목 문자열 후 첫 번째 DWORD 경계에 첫 번째 구조 시작 DS_SETFONT 지정 되지 않은 경우.
메뉴, windowClass, 제목및 글꼴 배열 단어 경계에 정렬 되어야 합니다.
메뉴, windowClass, 제목및 글꼴 배열에서 문자열을 지정 하는 경우 유니코드 문자열을 사용 해야 합니다. Windows 및 Windows NT에서 작동 하는 코드를 작성 하려면 MultiByteToWideChar 함수를 사용 하 여 이러한 유니코드 문자열 생성.
X, y, cx및 cy 멤버 대화 상자 단위로 값을 지정합니다. 화면 단위 (픽셀)을 MapDialogRect 함수를 사용 하 여 이러한 값을 변환할 수 있습니다.
nbsp;?Windows &NT: 버전 3.51 이상이 필요 합니다.
Windows:Windows 95 이상이 필요합니다.
Windows CE:지원 되지 않는.
대화 상자 개요, 대화 상자 구조, CreateDialogIndirect, CreateDialogIndirectParam, DialogBoxIndirect, DialogBoxIndirectParam, DLGITEMTEMPLATE, DLGITEMTEMPLATEEX, DLGTEMPLATE, MapDialogRect, MultiByteToWideChar, WM_SETFONT