LVN_GETDISPINFO codice di notifica
Inviato da un controllo di visualizzazione elenco alla finestra padre. Si tratta di una richiesta per la finestra padre per fornire informazioni necessarie per visualizzare o ordinare un elemento di visualizzazione elenco. Questo codice di notifica viene inviato sotto forma di messaggio di WM_NOTIFY .
LVN_GETDISPINFO
pdi = (NMLVDISPINFO*) lParam
Parametri
-
lParam
-
Puntatore a una struttura NMLVDISPINFO . In input, la struttura LVITEM contenuta in questa struttura specifica il tipo di informazioni necessarie e identifica l'elemento o l'elemento secondario di interesse. Utilizzare la struttura LVITEM per restituire le informazioni richieste al controllo. Se il gestore messaggi imposta il flag di LVIF_DI_SETITEM nel membro maschera della struttura LVITEM , il controllo di visualizzazione elenco archivia le informazioni richieste e non lo chiederà di nuovo.
Valore restituito
Nessun valore restituito.
Commenti
Il ricevitore di notifica esegue il cast di lParam per recuperare la struttura NMLVDISPINFO . Il parametro wParam contiene il codice di notifica.
Un controllo di visualizzazione elenco invia il codice di notifica LVN_GETDISPINFO per recuperare le informazioni sull'elemento archiviate dall'applicazione anziché dal controllo. Le informazioni possono essere informazioni di testo o icona per un elemento. Può anche essere informazioni sullo stato dell'elemento. Vedere il messaggio LVM_SETCALLBACKMASK per altre informazioni sull'implementazione dello stato dell'elemento in base al callback.
Per altre informazioni sui callback di visualizzazione elenco, vedere Elementi di callback e Callback Mask.
Esempio
Nell'esempio seguente viene illustrato come il codice di notifica potrebbe essere gestito per impostare il testo nelle colonne di una visualizzazione elenco. I dati per ogni elemento sono contenuti nella struttura seguente.
typedef struct tagPETINFO
{
TCHAR szName[50];
TCHAR szBreed[50];
TCHAR szGender[7];
TCHAR szPrice[20];
GroupIds iGroup;
} PETINFO;
Di seguito è riportato il gestore WM_NOTIFY nella procedura di dialogo.
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...
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows Vista [solo app desktop] |
Server minimo supportato |
Windows Server 2003 [solo app desktop] |
Intestazione |
|
Nomi Unicode e ANSI |
LVN_GETDISPINFOW (Unicode) e LVN_GETDISPINFOA (ANSI) |