Treeview com vários níveis

Delphi

23/03/2007

Olá

Estou precisando fazer uma treeview que depende do conteúdo do banco. Minha tabela está +- assim:

KEY      KEYPAI       ASSUNTO           
--------------------------------------------------------
  1        0          CADASTRO
  2        0          MOVIMENTO
  3        1          CADASTRO DE COTAÇÃO DO DÓLAR
  4        1          CADASTRO DE CLIENTES
  5        2          CONTAS A PAGAR
  6        2          CONTAS A RECEBER
  7        0          RELATORIOS
  8        7          LISTAGEM DE CADASTRO
  9        8          LST CLIENTES
 10        7          REL GERENCIAIS
 11       10          REL CONTAS A PAGAR   
 12       10          REL CONTAS A RECEBER



Ou seja, minha tabela tem registros pai, filhos e netos. Preciso de uma treeview que carregue a arvore corretamente e, ao clicar, eu saiba exatamente qual a chave primária da tabela.

Se alguém puder me ajudar, agradeço muito !!!!

Obrigada,

Tathiana
Campinas - SP


Tathianam

Tathianam

Curtidas 0

Respostas

Tathianam

Tathianam

23/03/2007

Só complementando, precisaria que a TREEVIEW ficasse +- assim:

Pai
|
|---Filho
|---Filho
|    |------Neto
|---Filho


E quando clicar no nó, saber o código chave dele ...

Valeu !


GOSTEI 0
Vcl.net

Vcl.net

23/03/2007

creio que vc está usando isso pra criar um cadastro de permissão pra usuarios customizados por form, eu também usei isso, mas acabei mudando de treeview para dbctrlgrid(delphi 2006), ficou show, agora guardo no form sysforms o caminho dentro do menu principal, o nome dele e a descrição, quando abro o form de usuários, ele lista esses caras aí, dado permissão pra cada user, se vc quiser saber mais responde aí, te passo ele...


GOSTEI 0
Facc

Facc

23/03/2007

Como vc sabe quem é o pai, filho ou neto? apenas pelo código? Creio que seja necessário vc alterar essa tabela e criar um campo chamado Nivel (ou de sua preferencia)

daí vc distribuiria assim

Descrição Nivel
Pai 0
Filho 1
Neto 2
Bisneto 3
...


depois é só criar manualmente a treeview

qualquer coisa poste aí


GOSTEI 0
Vcl.net

Vcl.net

23/03/2007

pra vc usar cada item no treeview, vc tem que usar o objeto Node.
pra vc saber que é o pai, vc usa node.parent, mas aconselho vc mudar esse conceito, vai ficar complicado pra vc trabalhar com isso no futuro, me reponde se deu certo, vlw


GOSTEI 0
Tathianam

Tathianam

23/03/2007

É, com node está muito difícil mesmo.

Estou fazendo como o colega falou do Level, mas por enquanto ainda não consigo pegar a chave primária quando clica no nó.

Qualquer novidade eu posto aqui

vlw !!! :!:


GOSTEI 0
Vcl.net

Vcl.net

23/03/2007

o problema é que vc fica limitado na herança de nodes, no caso acima vc chega só até bisneto saca, se vc estiver usando o delphi 2006, eu te mando um form que fiz com dbctrlgrid que ficou show, té +


GOSTEI 0
Facc

Facc

23/03/2007

o problema é que vc fica limitado na herança de nodes, no caso acima vc chega só até bisneto saca, se vc estiver usando o delphi 2006, eu te mando um form que fiz com dbctrlgrid que ficou show, té +


eu coloquei até o bisneto como exemplo... eu tenho aki com até 5 niveis...


GOSTEI 0
POSTAR