TREEVIEW: Um exemplo prático para o Fórum
Ola pessoal
Preciso urgentemente, da ajuda de voces para montar um objeto treeview a partir de um plano de contas de uma tabela ACCESS com ADO. Sei que tem várias mensagens sobre o assunto mas em nenuma delas encontrei um exemplo que ussase da recursividade e fosse dinâmica
para criar a árvore.
Estou tentando utlilizar o treeview pra que apareca a arvore, mas nao
consigo fazer carregar os dados da tabela como quero, pois preciso
controlar a Dinâmica dos dados do plano de contas, ou seja,
como inserir os Nós PAI x FILHO recursivamente. Gostaria que
ficasse com a seguinte estrutura, mas nao sei como fazer:
1 - entrada
---------------1.01- Venda Vista
---------------1.02- Venda Prazo
2 - Saidas
---------------2.01- pagamentos
------------------------------------2.01.01- pagamentos Diversos
Segue o exemplo de um código colocado:
------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var
MyTreeNode1, MyTreeNode2: TTreeNode;
begin
with TreeView1.Items do
begin
Clear; { Remove qualquer node existente }
MyTreeNode1 := Add(nil, ´RootTreeNode1´); { Adiciona o node raiz }
{ Adiciona um sub item no node adiciona anteriormente }
AddChild(MyTreeNode1,´ChildNode1´);
{Adiciona outro node raiz}
MyTreeNode2 := Add(MyTreeNode1, ´RootTreeNode2´);
AddChild(MyTreeNode2,´ChildNode2´);
MyTreeNode2 := TreeView1.Items[3];
AddChild(MyTreeNode2,´ChildNode2a´);
Add(MyTreeNode2,´ChildNode2b´);
Add(MyTreeNode1, ´RootTreeNode3´);
end;
end;
Muito Obrigado
Alex
Preciso urgentemente, da ajuda de voces para montar um objeto treeview a partir de um plano de contas de uma tabela ACCESS com ADO. Sei que tem várias mensagens sobre o assunto mas em nenuma delas encontrei um exemplo que ussase da recursividade e fosse dinâmica
para criar a árvore.
Estou tentando utlilizar o treeview pra que apareca a arvore, mas nao
consigo fazer carregar os dados da tabela como quero, pois preciso
controlar a Dinâmica dos dados do plano de contas, ou seja,
como inserir os Nós PAI x FILHO recursivamente. Gostaria que
ficasse com a seguinte estrutura, mas nao sei como fazer:
1 - entrada
---------------1.01- Venda Vista
---------------1.02- Venda Prazo
2 - Saidas
---------------2.01- pagamentos
------------------------------------2.01.01- pagamentos Diversos
Segue o exemplo de um código colocado:
------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var
MyTreeNode1, MyTreeNode2: TTreeNode;
begin
with TreeView1.Items do
begin
Clear; { Remove qualquer node existente }
MyTreeNode1 := Add(nil, ´RootTreeNode1´); { Adiciona o node raiz }
{ Adiciona um sub item no node adiciona anteriormente }
AddChild(MyTreeNode1,´ChildNode1´);
{Adiciona outro node raiz}
MyTreeNode2 := Add(MyTreeNode1, ´RootTreeNode2´);
AddChild(MyTreeNode2,´ChildNode2´);
MyTreeNode2 := TreeView1.Items[3];
AddChild(MyTreeNode2,´ChildNode2a´);
Add(MyTreeNode2,´ChildNode2b´);
Add(MyTreeNode1, ´RootTreeNode3´);
end;
end;
Muito Obrigado
Alex
Alexsandro
Curtidas 0
Respostas
Alexsandro
17/02/2005
Pessoal,
Esqueci de acrescentar um ponto importante: Para o tratamento da RECURSIVIDADE terei dois campos na tabela CONTAS:
Campo CONTA
CAmpo CONTA_PAI
Obrigado
Esqueci de acrescentar um ponto importante: Para o tratamento da RECURSIVIDADE terei dois campos na tabela CONTAS:
Campo CONTA
CAmpo CONTA_PAI
Obrigado
GOSTEI 0
Rodolpho123
17/02/2005
Vc vai ter que criar um campo chamado [b:686daedc0f]codhierárquico[/b:686daedc0f] na sua tabela, para vc poder definir a estrutura da sua TreeView.
GOSTEI 0
Alexsandro
17/02/2005
Meus Amigos,
Se alguém souber de um endereço ou exemplo pratico eu ficaria muito grato,
Alex
Se alguém souber de um endereço ou exemplo pratico eu ficaria muito grato,
Alex
GOSTEI 0
Emerson Nascimento
17/02/2005
vc poderia mostrar uma conta onde tenha o maior limite de ´ramificações´ da árvore? tipo:
X.XX.X.XX.X
na verdade eu gostaria de saber como seria a máscara da conta.
:shock: não sei se eu me fiz entender, mas com essa informação talvez eu posssa ajudar na solução do seu problema.
X.XX.X.XX.X
na verdade eu gostaria de saber como seria a máscara da conta.
:shock: não sei se eu me fiz entender, mas com essa informação talvez eu posssa ajudar na solução do seu problema.
GOSTEI 0
Alexsandro
17/02/2005
Oi Emerson,
A conta teria a seguinte mascara: 99.99.99.99.99. Tamnho de 10, pois não vejo necessidade de guardar os pontos. Cada Nível que desce é um subconjunto pois de fato nenhum PAI vai ter mais do que 99 filhos.
Agradeço qualquer colaboração do GRUPO,
Alex
A conta teria a seguinte mascara: 99.99.99.99.99. Tamnho de 10, pois não vejo necessidade de guardar os pontos. Cada Nível que desce é um subconjunto pois de fato nenhum PAI vai ter mais do que 99 filhos.
Agradeço qualquer colaboração do GRUPO,
Alex
GOSTEI 0
Sdph
17/02/2005
Olha tenho um exemplo que criei, caso esteja interessado me envie um E-Mail, que lhe enviarei amanhã o exemplo, pois estou no serviço agora.
sdph2003@hotmail.com
Até
sdph2003@hotmail.com
Até
GOSTEI 0
Emerson Nascimento
17/02/2005
Fiz uma rotina que creio estar totalmente funcional. Posso enviar no seu email para você testar. Caso atenda a sua necessidade, eu a publico aqui no fórum.
GOSTEI 0
Alexsandro
17/02/2005
Oi Emerson,
Ficarei grato por esta Rotina. Depois de testá-la meu objetivo é colocá-la no Fórum pois sei que muitas pessoas procuram por isso e posso lhe garantir, não é tão fácil de encontrar.
meu email seria: afio@ig.com.br
Muito Obrigado,
Alex
Ficarei grato por esta Rotina. Depois de testá-la meu objetivo é colocá-la no Fórum pois sei que muitas pessoas procuram por isso e posso lhe garantir, não é tão fácil de encontrar.
meu email seria: afio@ig.com.br
Muito Obrigado,
Alex
GOSTEI 0