Esse artigo faz parte da revista Clube Delphi Edição 62. Clique aqui para ler todos os artigos desta edição

Capa

Atenção: por essa edição ser muito antiga não há arquivo PDF para download desta revista. os artigos disponíveis somente em doc.

TreeView com banco de dados

Uma excelente alternativa ao DBGrid

Muito embora o DBGrid seja um componente bastante adequado para apresentar dados, por sua grande versatilidade, em alguns momentos gostaríamos de ver esses dados em um outro formato. Por exemplo, em uma estrutura hierárquica, estilo o Explorer do Windows. Para essas situações podemos utilizar o TreeView.

Além de propriedades comuns para apresentação de dados, ele possui algumas outras características interessantes, como: incluir ícones para itens selecionados, simular efeito de link, dados podem ser carregados estática ou dinamicamente etc.

O problema é que na VCL o TreeView não é Data-Aware, ou seja, não existe um "DBTreeView”. Mas nada impede que você explore ao máximo os recursos do componente para exibir dados vindos de um banco de dados, basta escrever um pouco de código, como veremos neste artigo.

Iniciando o projeto

Inicie uma nova aplicação VCL no Delphi e adicione um TreeView (Win32) no formulário, alterando sua propriedade Align para alLeft. Vamos ver agora como adicionar itens ao componente. A maneira mais simples de se trabalhar com um TreeView é incluir os dados em tempo de projeto, ou seja,de forma estática. Basta dar um duplo clique sobre o componente e um editor para manipulação de itens será aberto. Temos caixas de texto, onde configuramos o rótulo do item (Text) e as imagens que serão visualizadas quando o item estiver ou não selecionado.

Para anexar imagens no TreeView, inclua dois ImageLists no formulário. Com um duplo clique sobre cada um deles temos acesso ao editor de imagens, onde adicionaremos alguns bitmaps ou ícones. Os ImageLists devem ser associados às propriedades Images e Statelmages do TreeView. Agora podemos alterar as propriedades Image Index, Selected Image e State Index de alguns itens do TreeView para verificar o comportamento em tempo de execução. Com isso podemos usar uma imagem para quando o item estiver selecionado outra quando estiver em estado normal.

No tocante ao aspecto visual de nosso ...

Quer ler esse conteúdo completo? Tenha acesso completo