atório. Este último é uma espécie de grid de leitura apenas, que podemos usar também para mostrar os dados de um Dataset. No componente Delphi, o estilo de visualização é definido pela propriedade ViewStyle, que pode ter os valores vsIcon, vsSmallIcon, vsList ou vsReport. Como o nome sugere, é atribuindo vsReport a ViewStyle que obtemos um list view em modo de relatório.
Figura 1. O controle list view é usado no Windows Explorer na parte direita da janela
Interessante notar que, embora seja muito comum em aplicações de sistema, o uso desse tipo de componente não se difundiu entre desenvolvedores Delphi. O motivo dessa impopularidade talvez seja o método de alimentação de dados, que é um pouco trabalhoso.
Manipulação de itens
Para inserir os dados dos itens no componente TListView é preciso criar e adicionar, um a um, objetos TListItem na coleção Items do componente. Veja no exemplo a seguir como é inserido, por código, um item na lista:
var
NewItem: TListItem;
begin
NewItem:= ListView1.Items.Add;
NewItem.Caption:= '101';
NewItem.Subitems.Add('Nome do Cliente 101');
NewItem.Subitems.Add('Endereço do Cliente 101');
end;
No exemplo, o método Items.Add retorna um novo objeto TListItem associado ao TListView, que deve então ser parametrizado pelo usuário. A principal propriedade de um TListItem é Caption, que dá nome ao item.
A propriedade SubItems de TListItem é um descendente de TStrings, que serve para informar, em seqüência, os textos das colunas complementares (que são todas, exceto a primeira, cujo texto é dado por Caption) que são exibidas quando em modo relatório. Para mostrar ícones, você deve usar as propriedades ImageIndex e SubItemImages, em conjunto com LargeImages e/ou SmallImages (propriedades do componente TListView), conforme o modo de visualização. É necessário repetir esse processo de criação de objetos TListItem para todos os itens da lista, em um loop codificado manualmente, antes que a janela seja exibida.
A julgar somente por esse critério, parece muito mais fácil simplesmente definir a propriedade DataSource de um TDBGrid. No entanto, demonstraremos um meio alternativo de fornecimento de dados para o TListView, em uma tentativa de tornar mais fácil o uso desse componente tão útil.
Vantagens do TListView
Há muitas vantagens em usar componentes TListView na interface de usuário para exibir o conteúdo de Datasets. Veja os maiores diferenciais:
...