LVN_GETDISPINFO 알림 코드
목록 뷰 컨트롤에서 부모 창으로 보냅니다. 목록 뷰 항목을 표시하거나 정렬하는 데 필요한 정보를 제공하기 위해 부모 창에 대한 요청입니다. 이 알림 코드는 WM_NOTIFY 메시지 형식으로 전송됩니다.
LVN_GETDISPINFO
pdi = (NMLVDISPINFO*) lParam
매개 변수
-
lParam
-
NMLVDISPINFO 구조체에 대한 포인터입니다. 입력 시 이 구조체에 포함된 LVITEM 구조체는 필요한 정보 형식을 지정하고 관심 항목 또는 하위 항목을 식별합니다. LVITEM 구조체를 사용하여 요청된 정보를 컨트롤에 반환합니다. 메시지 처리기가 LVITEM 구조체의 mask 멤버에 LVIF_DI_SETITEM 플래그를 설정하면 목록 뷰 컨트롤이 요청된 정보를 저장하고 다시 요청하지 않습니다.
반환 값
반환 값이 없습니다.
설명
알림 수신자는 lParam을 캐스팅하여 NMLVDISPINFO 구조체를 검색합니다. wParam 매개 변수는 알림 코드를 포함합니다.
목록 뷰 컨트롤은 LVN_GETDISPINFO 알림 코드를 전송하여 컨트롤이 아닌 애플리케이션이 저장한 항목 정보를 검색합니다. 정보는 항목에 대한 텍스트 또는 아이콘 정보일 수 있습니다. 항목 상태 정보일 수도 있습니다. 콜백 기반 항목 상태 구현에 대한 자세한 내용은 LVM_SETCALLBACKMASK 메시지를 참조하세요.
목록 뷰 콜백에 대한 자세한 내용은 콜백 항목 및 콜백 마스크를 참조하세요.
예제
다음 예에서는 목록 뷰의 열에 텍스트를 설정하기 위해 이 알림 코드를 처리하는 방법을 보여 줍니다. 각 항목의 데이터는 다음 구조체로 유지됩니다.
typedef struct tagPETINFO
{
TCHAR szName[50];
TCHAR szBreed[50];
TCHAR szGender[7];
TCHAR szPrice[20];
GroupIds iGroup;
} PETINFO;
다음은 대화 프로시저의 WM_NOTIFY 처리기에서 가져온 것입니다.
case WM_NOTIFY:
switch (((LPNMHDR) lParam)->code)
{
case LVN_GETDISPINFO:
{
NMLVDISPINFO* plvdi = (NMLVDISPINFO*)lParam;
switch (plvdi->item.iSubItem)
{
case 0:
// rgPetInfo is an array of PETINFO structures.
plvdi->item.pszText = rgPetInfo[plvdi->item.iItem].szName;
break;
case 1:
plvdi->item.pszText = rgPetInfo[plvdi->item.iItem].szBreed;
break;
case 2:
plvdi->item.pszText = rgPetInfo[plvdi->item.iItem].szGender;
break;
case 3:
plvdi->item.pszText = rgPetInfo[plvdi->item.iItem].szPrice;
break;
default:
break;
}
return TRUE;
}
// More notifications...
}
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 |
Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 |
Windows Server 2003 [데스크톱 앱만 해당] |
헤더 |
|
유니코드 및 ANSI 이름 |
LVN_GETDISPINFOW(유니코드) 및 LVN_GETDISPINFOA(ANSI) |