Office System

The Office Developer Blog (by Luiz Cláudio C. V. Rocha - São Paulo, Brazil)

Treeview no Access

Anos atrás escrevi um exemplo de Treeview no Microsoft Access para listar os diferentes tipos de objeto e abri-los com um duplo-click.

Este exemplo foi bastante distribuído (ficava no antigo Sharepedia do MSDN), depois ficou sumido por não estar publicado em lugar algum.

Como recentemente muita gente tem perguntado a respeito de Treeview no Access, resolvi disponibilizar este velho exemplo aqui no meu blog.

Treeview no MS-Access

 

A codificação não é complexa, o que mais dificulta é o IntelliSense não funcionar de forma 100% correta para os controles não nativos do Access.

É importante notar que os eventos específicos do Treeview não são encontrados na guia Eventos da janela de propriedades. É necesário abrir o módulo VBA do formulário e selecionar o objeto Treeview na combo de objetos para que então seus eventos (como NodeCheck, NodeClick e Collapse) apareça na combo da direita.

Ao programar, o objetivo é saber qual nó da árvore foi clicado pelo usuário. O pulo do gato é usar o evento NodeClick, que tem um parâmetro Node. O próprio VBA grava neste parâmetro o nó que disparou o evento. Basta atribui-lo a uma variável de módulo e usar em outros eventos (como o DblClick):

Private Sub tvwObj_NodeClick(ByVal Node As Object)
'Retorna o nome do nó
On Error GoTo Tratamento
strNode = Node 'nó clicado
strNodeParent = Node.Parent 'nó hierarquicamente acima do clicado
Exit Sub

Tratamento:
strNodeParent = ""
End Sub

Quem quiser o arquivo de exemplo está anexado a este post.

Comments

Zoio21 said:

Parabéns, simples, prático e funcional.

Obrigado por compartilhar seu conhecimento com outras pessoas.

Abraço,

Zoio21

# August 22, 2008 3:30 PM

Luiz said:

Parabéns e obrigado!

# June 30, 2009 11:11 AM
Leave a Comment

(required) 

(required) 

(optional)

(required)