Vero, TreeView e ListView sono controlli visuali abbastanza complessi, ma la loro gestione in Delphi è di gran lunga più semplice che in altri linguaggi.
Puoi definire le colonne, nonchè aggiungere nuovi elementi alla ListView sia a designtime che a runtime. Ciascun elemento della ListView viene reso disponibile attraverso la proprietà Items ed è di tipo TListItem. Questo oggetto mette a disposizione del programmatore diverse proprietà, tra cui Caption, che rappresenta il testo visualizzato sull'elemento, e SubItems, che contiene invece i testi da visualizzare nelle restanti colonne in cui è suddiviso il controllo ListView.
La proprietà SubItems è di tipo TStrings, un tipo astratto che viene utilizzato in Delphi per rappresentare genericamente una lista di stringhe; lo troviamo ad esempio anche nella proprietà Lines del controllo TMemo.
Nel caso del ListItem, ciascuna linea di testo corrisponde ad una diversa colonna della ListView in cui tale testo verrà rappresentato in corrispondenza dell'elemento a cui è associato.
Supponiamo di voler visualizzare ad esempio un elemento con etichetta "Pippo" e sottoelementi (3) "Qui", "Quo" e "Qua".
codice:
with ListView1.Items.Add do
begin
Caption := 'Pippo';
SubItems.Add('Qui');
SubItems.Add('Quo');
SubItems.Add('Qua');
end;
(il codice l'ho scritto a memoria, quindi non è verificato ma riportato solo a puro titolo esemplificativo)
Attraverso le proprietà dell'oggetto ListItem.SubItems possiamo rileggere e manipolare i contenuti delle colonne.
Per maggiori informazioni, prova a consultare anche la Guida in linea di Delphi; solitamente ci sono degli esempi già pronti.
Ricordati di impostare la proprietà ViewStyle del controllo ListView a vsReport se vuoi vedere anche i dati delle colonne.
Spero di essermi espresso con sufficiente chiarezza.
Ciao!