Problema com a treeview

Delphi

29/09/2012

Ola, toda vez que carrego uns arquivos para ser armazenados na treeview elas ficam opacas, meio transparente ou borradas, alguem pode me dizer o que ta acontecendo ou que estou fazendo de errado.

obrigado.
Wilton Júnior

Wilton Júnior

Curtidas 0

Respostas

Alisson Santos

Alisson Santos

29/09/2012

Como está fazendo o carregamento dessas informações?
GOSTEI 0
Wilton Júnior

Wilton Júnior

29/09/2012

Coloquei as seguintes variaveis:
Node:TTreeNode;
SubNode:TTreeNode;

{Se a quantidade de linhas for maior que um irá ler e gravar conteudos de outros arquivos}
if n > 1 then
begin
//Salvar o conteudo de index.sys na memoria00(clientdataset)
while not eof(arq) do
begin
Readln(arq, ArqLinha);
if ArqLinha <> '' then
begin
Memoria00.Append;
Memoria00NomeDB.AsString := ArqLinha;
Memoria00.Post;

ArqLinha:= '';
end;
end;
CloseFile(arq);

//Gravar base de dados
memoria00.First;
while not memoria00.Eof do
begin
//Se o arquivo for o index
if Memoria00NomeDB.AsString = 'index' then
TreeDataBase.items.Add(nil, Memoria00NomeDB.AsString)
else
begin
//Checar se pasta com o nome da base de dados exite.
if DirectoryExists('C:\SQLBacala\Database\'+Memoria00NomeDB.AsString) then
Begin
//Checar se arquivo ixtabela.sys existe dentro dessa pasta
if FileExists('C:\SQLBacala\Database\'+Memoria00NomeDB.AsString+'\ixtabela.sys') then
begin
//Grava base de dados na treeview
node := TreeDataBase.Items.Add(nil, Memoria00NomeDB.AsString);

//Abrir o arquivo ixtabela
AssignFile(Arq,'C:\SQLBacala\Database\'+ Memoria00NomeDB.AsString+'\ixtabela.sys');
Reset(arq);

//Gravar na memoria01
while not eof(arq) do
begin
Readln(arq, ArqLinha);
if ArqLinha <> '' then
begin
Memoria01.Append;
Memoria01NomeDB.AsString := Memoria00NomeDB.AsString;
Memoria01Nomtab.AsString := ArqLinha;
Memoria01.Post;

ArqLinha:= '';
end;
end;
CloseFile(arq);

memoria01.First;
while not memoria01.eof do
begin
//Checar se pasta com o nome da tabela exite.
if DirectoryExists('C:\SQLBacala\Database\'+Memoria00NomeDB.AsString+'\'+Memoria01Nomtab.asstring) then
Begin
//Checar se arquivo ixcampo.sys existe dentro dessa pasta
if FileExists('C:\SQLBacala\Database\'+Memoria00NomeDB.AsString+'\'+Memoria01Nomtab.asstring+'\idxcampo.sys') then
begin
subnode := TreeDataBase.Items.AddChild(node, Memoria01Nomtab.asstring);

//Abrir o arquivo ixcampo
AssignFile(Arq,'C:\SQLBacala\Database\'+ Memoria00NomeDB.AsString+'\'+Memoria01Nomtab.asstring+'\idxcampo.sys');
Reset(arq);

//Gravar na memoria02
while not eof(arq) do
begin
Readln(arq, ArqLinha);
if ArqLinha <> '' then
begin
Memoria02.Append;
Memoria02basedados.AsString := Memoria00NomeDB.AsString;
Memoria02NomTab.AsString := Memoria01Nomtab.AsString;

//Separa o campo do tipo do campo
if ArqLinha <> '' then
begin
for I := 0 to length(ArqLinha) do
begin
if Copy(ArqLinha,i,1) = '-' then
flag := true;

if Copy(ArqLinha,i,1) <> '-' then
begin
case flag of
true : campo := campo + Copy(ArqLinha,i,1);
false : tipo := tipo + Copy(ArqLinha,i,1);
end;
end;


end;
end;

Memoria02campo.AsString := campo;
Memoria02tipo.AsString := tipo;
Memoria02.Post;

ArqLinha:= '';
end;
end;
CloseFile(arq);

//Gravar na treewiew
Memoria02.First;
while not memoria02.eof do
begin
if ((Memoria02basedados.AsString = Memoria00NomeDB.AsString)
and(Memoria02NomTab.AsString = Memoria01Nomtab.AsString)) then
TreeDataBase.Items.AddChild(subnode, Memoria02campo.AsString);


memoria02.Next;
end;

end
else
begin
Mensagem(8);
Mensagem(4);
Application.Terminate;
exit;
end;
End
else
begin
Mensagem(7);
Mensagem(4);
Application.Terminate;
exit;
end;



memoria01.Next;
end;
end
else
begin
//Mensagem de erro caso arquivo ixtabela não encontrado
Mensagem(6);
mensagem(4);
Application.Terminate;
exit;
end;
End
else
begin
//mensagem de erro caso pasta com o nome da base de dados não encontrada.
Mensagem(5);
Mensagem(4);
Application.Terminate;
exit;
end;

end;






memoria00.Next;
end;
end
else
begin
Readln(arq, ArqLinha);
Memoria00.Append;
Memoria00NomeDB.AsString := ArqLinha;
Memoria00.Post;

CloseFile(arq);

TreeDataBase.Items.Add(nil, Memoria00NomeDB.AsString);
end;

GOSTEI 0
Wilton Júnior

Wilton Júnior

29/09/2012

O Código é esse precisa de mais alguma coisa?
GOSTEI 0
Deivison Melo

Deivison Melo

29/09/2012

Seria interessante postar a imagem de como está ficando na tela... Assim teríamos um melhor entendimento dos problemas mencionados!!

forte abraço e bons códigos!
GOSTEI 0
Wilton Júnior

Wilton Júnior

29/09/2012

http://tinypic.com/view.php?pic=2jg46lh&s=6

tah nesse link
quando as base de dados sobem para o treeview eles ficam foscos quase não aparecem.
Se quizer te mando os fortes no seu e-mail para testar e ver o que ta acontecendo.
obrigado.

Deus o abençoe
GOSTEI 0
Wilton Júnior

Wilton Júnior

29/09/2012

Estou mandando outro link da imagem que da para ver melhor o que tah acontecendo:
http://oi46.tinypic.com/2utqiqh.jpg
GOSTEI 0
Wilton Júnior

Wilton Júnior

29/09/2012

Tem alguma solucção
GOSTEI 0
POSTAR