DLGITEMTEMPLATE 구조체(winuser.h)
대화 상자에서 컨트롤의 차원과 스타일을 정의합니다. 이러한 구조체 중 하나 이상이 DLGTEMPLATE 구조체와 결합되어 대화 상자의 표준 템플릿을 형성합니다.
구문
typedef struct {
DWORD style;
DWORD dwExtendedStyle;
short x;
short y;
short cx;
short cy;
WORD id;
} DLGITEMTEMPLATE;
멤버
style
형식:DWORD
컨트롤의 스타일입니다. 이 멤버는 창 스타일 값(예: WS_BORDER)과 하나 이상의 컨트롤 스타일 값(예: BS_PUSHBUTTON 및 ES_LEFT)의 조합일 수 있습니다.
dwExtendedStyle
형식:DWORD
창의 확장 스타일입니다. 이 멤버는 대화 상자에서 컨트롤을 만드는 데 사용되지 않지만 대화 상자 템플릿을 사용하는 애플리케이션은 이를 사용하여 다른 유형의 창을 만들 수 있습니다. 값 목록은 확장 창 스타일을 참조하세요.
x
형식: short
컨트롤의 왼쪽 위 모서리에 있는 대화 상자 단위의 x 좌표입니다. 이 좌표는 항상 대화 상자의 클라이언트 영역의 왼쪽 위 모서리를 기준으로 합니다.
y
형식: short
컨트롤의 왼쪽 위 모서리에 있는 대화 상자 단위의 y 좌표입니다. 이 좌표는 항상 대화 상자의 클라이언트 영역의 왼쪽 위 모서리를 기준으로 합니다.
cx
형식: short
컨트롤의 너비(대화 상자 단위)입니다.
cy
형식: short
컨트롤의 높이(대화 상자 단위)입니다.
id
형식: WORD
컨트롤 식별자입니다.
설명
대화 상자의 표준 템플릿에서 DLGITEMTEMPLATE 구조체는 항상 즉시 뒤에 컨트롤의 클래스, 제목 및 생성 데이터를 지정하는 세 개의 가변 길이 배열이 옵니다. 각 배열은 하나 이상의 16비트 요소로 구성됩니다.
템플릿의 각 DLGITEMTEMPLATE 구조체는 DWORD 경계에 맞춰야 합니다. 클래스 및 제목 배열은 WORD 경계에 맞춰야 합니다. 만들기 데이터 배열은 WORD 경계에 맞춰야 합니다.
각 DLGITEMTEMPLATE 구조 바로 다음에는 컨트롤의 창 클래스를 지정하는 클래스 배열이 있습니다. 이 배열의 첫 번째 요소가 0xFFFF 이외의 값이면 시스템은 배열을 등록된 창 클래스의 이름을 지정하는 null로 끝나는 유니코드 문자열로 처리합니다. 첫 번째 요소가 0xFFFF 경우 배열에는 미리 정의된 시스템 클래스의 서수 값을 지정하는 요소가 하나 더 있습니다. 서수는 다음 원자 값 중 하나일 수 있습니다.
값 | 의미 |
---|---|
0x0080 | 단추 |
0x0081 | 편집 |
0x0082 | 정적 |
0x0083 | 목록 상자 |
0x0084 | 스크롤 막대 |
0x0085 | 콤보 상자 |
클래스 배열 다음에는 컨트롤의 초기 텍스트 또는 리소스 식별자가 포함된 제목 배열이 있습니다. 이 배열의 첫 번째 요소가 0xFFFF 경우 배열에는 실행 파일에서 아이콘과 같은 리소스의 서수 값을 지정하는 추가 요소가 하나 더 있습니다. 텍스트가 아닌 아이콘 또는 기타 리소스를 로드하고 표시하는 정적 아이콘 컨트롤과 같은 컨트롤에 리소스 식별자를 사용할 수 있습니다. 첫 번째 요소가 0xFFFF 이외의 값이면 시스템은 배열을 초기 텍스트를 지정하는 null로 끝나는 유니코드 문자열로 처리합니다.
만들기 데이터 배열은 제목 배열 뒤의 다음 WORD 경계에서 시작됩니다. 이 생성 데이터는 모든 크기와 형식일 수 있습니다. 만들기 데이터 배열의 첫 번째 단어가 0이 아닌 경우 생성 데이터의 크기(크기 단어 포함)를 바이트 단위로 나타냅니다. 컨트롤의 창 프로시저는 데이터를 해석할 수 있어야 합니다. 시스템에서 컨트롤을 만들 때 컨트롤에 보내는 WM_CREATE 메시지의 lParam 매개 변수에서 이 데이터에 대한 포인터를 전달합니다.
클래스 및 제목 배열에서 문자열을 지정하는 경우 유니코드 문자열을 사용해야 합니다. MultiByteToWideChar 함수를 사용하여 ANSI 문자열에서 유니코드 문자열을 생성합니다.
x, y, cx 및 cy 멤버는 대화 상자 단위의 값을 지정합니다. MapDialogRect 함수를 사용하여 이러한 값을 화면 단위(픽셀)로 변환할 수 있습니다.
요구 사항
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
머리글 | winuser.h(Windows.h 포함) |
추가 정보
개념
기타 리소스
참조