TVITEMEXA 구조체(commctrl.h)
트리 뷰 항목의 특성을 지정하거나 받습니다. 이 구조는 TVITEM 구조의 향상된 기능입니다. 새 애플리케이션은 적절한 경우 이 구조를 사용해야 합니다.
통사론
typedef struct tagTVITEMEXA {
UINT mask;
HTREEITEM hItem;
UINT state;
UINT stateMask;
LPSTR pszText;
int cchTextMax;
int iImage;
int iSelectedImage;
int cChildren;
LPARAM lParam;
int iIntegral;
UINT uStateEx;
HWND hwnd;
int iExpandedImage;
int iReserved;
} TVITEMEXA, *LPTVITEMEXA;
회원
mask
형식: UINT
유효한 데이터를 포함하는 다른 구조체 멤버를 나타내는 플래그 배열입니다. 이 구조체를 TVM_GETITEM 메시지와 함께 사용하면 마스크 멤버는 검색할 항목 특성을 나타냅니다. TVM_SETITEM 메시지와 함께 사용하는 경우 마스크 설정할 특성을 나타냅니다. 이 멤버는 다음 값 중 하나 이상이 될 수 있습니다.
값 | 의미 |
---|---|
|
cChildren 멤버가 유효합니다. |
|
트리 뷰 컨트롤은 제공된 정보를 유지하고 다시 요청하지 않습니다. 이 플래그는 TVN_GETDISPINFO 알림을 처리할 때만 유효합니다. |
|
버전 6.00 및 |
|
hItem 멤버가 유효합니다. |
|
iImage 멤버가 유효합니다. |
|
iIntegral 멤버가 유효합니다. |
|
lParam 멤버가 유효합니다. |
|
iSelectedImage 멤버가 유효합니다. |
|
상태 및 stateMask 멤버는 유효합니다. |
|
버전 6.00 및 |
|
pszText 및 cchTextMax 멤버는 유효합니다. |
hItem
형식: HTREEITEM
항목에 대한 핸들입니다.
state
형식: UINT
항목의 상태를 나타내는 비트 플래그 및 이미지 목록 인덱스 집합입니다. 항목의 상태를 설정할 때 stateMask 멤버는 이 멤버의 유효한 비트를 나타냅니다. 항목의 상태를 검색할 때 이 멤버는 stateMask 멤버에 표시된 비트의 현재 상태를 반환합니다. 이 멤버에 대한 자세한 내용은 설명 섹션을 참조하세요.
이 멤버의 비트 0~7에는 항목 상태 플래그가 포함됩니다. 가능한 항목 상태 플래그 목록은 Tree-View 컨트롤 항목 상태참조하세요.
이 멤버의 비트 8~11은 1부터 시작하는 오버레이 이미지 인덱스를 지정합니다. 오버레이 이미지는 항목의 아이콘 이미지 위에 중첩됩니다. 이러한 비트가 0이면 항목에 오버레이 이미지가 없습니다. 이러한 비트를 격리하려면 TVIS_OVERLAYMASK 마스크를 사용합니다. 이 멤버에서 오버레이 이미지 인덱스를 설정하려면 INDEXTOOVERLAYMASK 매크로를 사용합니다. 이미지 목록의 오버레이 이미지는 ImageList_SetOverlayImage 함수로 설정됩니다.
상태 이미지는 애플리케이션 정의 상태를 나타내기 위해 항목의 아이콘 옆에 표시됩니다. TVM_SETIMAGELIST 메시지를 보내 상태 이미지 목록을 지정합니다. 항목의 상태 이미지를 설정하려면 TVITEM 구조체의 stateMask 멤버에 TVIS_STATEIMAGEMASK 값을 포함합니다. 구조체의 상태 멤버의 비트 12~15는 그릴 이미지의 상태 이미지 목록에서 인덱스를 지정합니다.
상태 이미지 인덱스를 설정하려면 INDEXTOSTATEIMAGEMASK사용합니다. 이 매크로는 인덱스를 사용하고 비트 12~15를 적절하게 설정합니다. 항목에 상태 이미지가 없음을 나타내려면 인덱스 0으로 설정합니다. 이 규칙은 상태 이미지 목록의 이미지 0을 상태 이미지로 사용할 수 없음을 의미합니다. 상태 멤버의 비트 12~15를 격리하려면 TVIS_STATEIMAGEMASK 마스크를 사용합니다.
stateMask
형식: UINT
유효한 상태 멤버의 비트입니다. 항목의 상태를 검색하는 경우 stateMask 멤버의 비트를 설정하여 상태 멤버에서 반환될 비트를 나타냅니다. 항목의 상태를 설정하는 경우 설정하려는 상태 멤버의 비트를 나타내도록 stateMask 멤버의 비트를 설정합니다. 항목의 오버레이 이미지 인덱스를 설정하거나 검색하려면 TVIS_OVERLAYMASK 비트를 설정합니다. 항목의 상태 이미지 인덱스를 설정하거나 검색하려면 TVIS_STATEIMAGEMASK 비트를 설정합니다.
pszText
형식: LPTSTR
구조체가 항목 특성을 지정하는 경우 항목 텍스트가 포함된 null로 끝나는 문자열에 대한 포인터입니다. 이 멤버가 LPSTR_TEXTCALLBACK 값이면 부모 창에서 이름을 저장해야 합니다. 이 경우 트리 보기 컨트롤은 항목 텍스트가 변경되면 표시, 정렬 또는 편집을 위한 항목 텍스트 및 TVN_SETDISPINFO 알림 코드가 필요할 때 부모 창에 TVN_GETDISPINFO 알림 코드를 보냅니다. 구조체가 항목 특성을 수신하는 경우 이 멤버는 항목 텍스트를 받는 버퍼의 주소입니다. 트리 뷰 컨트롤은 모든 길이 문자열을 항목 텍스트로 저장할 수 있지만 처음 260자만 표시됩니다.
cchTextMax
형식: int
pszText 멤버가 가리키는 버퍼의 크기(문자)입니다. 이 구조체를 사용하여 항목 특성을 설정하는 경우 이 멤버는 무시됩니다.
iImage
형식: int
항목이 선택되지 않은 상태일 때 사용할 아이콘 이미지의 트리 뷰 컨트롤 이미지 목록의 인덱스입니다. 이 멤버가 I_IMAGECALLBACK 값이면 부모 창에서 인덱스 저장을 담당합니다. 이 경우 트리 뷰 컨트롤은 이미지를 표시해야 할 때 인덱스를 검색하는 TVN_GETDISPINFO 알림 코드를 부모에 보냅니다.
iSelectedImage
형식: int
항목이 선택된 상태일 때 사용할 아이콘 이미지의 트리 뷰 컨트롤 이미지 목록의 인덱스입니다. 이 멤버가 I_IMAGECALLBACK 값이면 부모 창에서 인덱스 저장을 담당합니다. 이 경우 트리 뷰 컨트롤은 이미지를 표시해야 할 때 인덱스를 검색하는 TVN_GETDISPINFO 알림 코드를 부모에 보냅니다.
cChildren
형식: int
항목에 연결된 자식 항목이 있는지 여부를 나타내는 플래그입니다. 이 멤버는 다음 값 중 하나일 수 있습니다.
값 | 의미 |
---|---|
|
항목에 자식 항목이 없습니다. |
|
항목에 하나 이상의 자식 항목이 있습니다. |
|
부모 창은 항목에 자식 항목이 있는지 여부를 추적합니다. 이 경우 트리 뷰 컨트롤에서 항목을 표시해야 하는 경우 컨트롤은 부모에 TVN_GETDISPINFO 알림 코드를 보내 항목에 자식 항목이 있는지 여부를 확인합니다. 트리 뷰 컨트롤에 TVS_HASBUTTONS 스타일이 있는 경우 이 멤버를 사용하여 자식 항목의 존재를 나타내는 단추를 표시할지 여부를 결정합니다. 이 멤버를 사용하여 항목에 자식 항목이 삽입되지 않은 경우에도 컨트롤에 단추를 강제로 표시할 수 있습니다. 이렇게 하면 항목이 표시되거나 확장된 경우에만 자식 항목을 삽입하여 컨트롤의 메모리 사용량을 최소화하면서 단추를 표시할 수 있습니다. |
|
버전 6.0내부용입니다. 애플리케이션에서 사용하지 않는 것이 좋습니다. 트리 뷰 컨트롤은 항목에 자식 항목이 있는지 여부를 자동으로 결정합니다.
참고 이 플래그는 이후 버전의 Comctl32.dll지원되지 않을 수 있습니다. 또한 이 플래그는 commctrl.h에 정의되어 있지 않습니다. 플래그를 사용하려면 애플리케이션의 원본 파일에 다음 정의를 추가합니다.
|
lParam
형식: LPARAM
항목과 연결할 값입니다.
iIntegral
형식: int
항목의 높이(표준 항목 높이의 배수)입니다(TVM_SETITEMHEIGHT참조). 예를 들어 이 멤버를 2로 설정하면 항목의 표준 높이가 두 배입니다. 트리 뷰 컨트롤은 항목 콘텐츠 아래에 표시되는 추가 영역에 그리지 않지만 사용자 지정 그리기
uStateEx
형식: UINT
Internet Explorer 6 이상
hwnd
형식: HWND
Internet Explorer 6 이상
iExpandedImage
형식: int
Internet Explorer 6 이상
iReserved
형식: int
예약 멤버입니다. 사용하지 마세요.
발언
메모
commctrl.h 헤더는 UNICODE 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 TVITEMEX를 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입대한
요구 사항
요구 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
헤더 | commctrl.h |