LVN_GETDISPINFO código de notificação

Enviado por um controle de exibição de lista para sua janela pai. É uma solicitação para que a janela pai forneça informações necessárias para exibir ou classificar um item de exibição de lista. Esse código de notificação é enviado na forma de uma mensagem WM_NOTIFY .

LVN_GETDISPINFO
        
    pdi = (NMLVDISPINFO*) lParam

Parâmetros

lParam

Ponteiro para uma estrutura NMLVDISPINFO . Na entrada, a estrutura LVITEM contida nessa estrutura especifica o tipo de informação necessária e identifica o item ou subitem de interesse. Use a estrutura LVITEM para retornar as informações solicitadas ao controle. Se o manipulador de mensagens definir o sinalizador LVIF_DI_SETITEM no membro de máscara da estrutura LVITEM , o controle de exibição de lista armazenará as informações solicitadas e não solicitará novamente.

Valor retornado

Sem valor de retorno.

Comentários

O receptor de notificação converte lParam para recuperar a estrutura NMLVDISPINFO . O parâmetro wParam contém o código de notificação.

Um controle de exibição de lista envia o código de notificação LVN_GETDISPINFO para recuperar informações de item armazenadas pelo aplicativo em vez do controle. As informações podem ser informações de texto ou ícone para um item. Também podem ser informações de estado do item. Consulte a mensagem LVM_SETCALLBACKMASK para obter mais informações sobre como implementar o estado do item em uma base de retorno de chamada.

Para obter mais informações sobre retornos de chamada de exibição de lista, consulte Itens de retorno de chamada e máscara de retorno de chamada.

Exemplos

O exemplo a seguir mostra como esse código de notificação pode ser tratado para definir o texto nas colunas de uma exibição de lista. Os dados de cada item são mantidos na estrutura a seguir.

 typedef struct tagPETINFO
{
    TCHAR szName[50];
    TCHAR szBreed[50];
    TCHAR szGender[7];
    TCHAR szPrice[20];
    GroupIds iGroup;
} PETINFO;
            

A seguir está o manipulador de WM_NOTIFY no procedimento de caixa de diálogo.

    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...
      }

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte
Windows Server 2003 [somente aplicativos da área de trabalho]
Cabeçalho
Commctrl.h
Nomes Unicode e ANSI
LVN_GETDISPINFOW (Unicode) e LVN_GETDISPINFOA (ANSI)

Confira também

LVN_SETDISPINFO