Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 13-04-2007
mierda mierda is offline
Miembro
 
Registrado: may 2006
Posts: 129
Poder: 19
mierda Va por buen camino
Rellenar treeview con un directorio recursivamente

Hola tios, estoy intentando rellenar un treeview recursivamente con las carpetas y ficheros de texto de un directorio, y si solo hay una subcarpeta me funciona perfectamente, pero cuando paso de ahi se me va de bola ... a ver si me arrojais un poco de luz

Gracias

Código Delphi [-]
 
procedure TForm1.RastreaDir( Dir: string );
var
   FileSearch:  TSearchRec;
   nodo1,nodo2,nodo3,nodo4,nodo5,nodo6, nodo7, nodo8, nodo9,nodo10: TTreeNode;
begin
   num  := num +1;
   ChDir ( Dir );
   if FindFirst ( '*.*', faDirectory, FileSearch )=0 then
   repeat
     if ( (FileSearch.Attr and fadirectory) = fadirectory) then
       begin
         if  (FileSearch.Name <> '.')and (FileSearch.Name <> '..') then
           begin
             if num = 1 then
               begin
                 nodo1 := arbol.Items.Add(nil,filesearch.name);
                 nodo1.selectedindex := num;
               end
             else
               begin
                nodo1 := arbol.Items.Addchild(nodo1,filesearch.name);
                nodo1.selectedindex := num;
               end;
             RastreaDir( Dir + '\' + FileSearch.Name );
           end;
       end
     else
       begin
         Memo1.Lines.Add( Dir +'\'+FileSearch.Name );
         arbol.Items.AddChild(nodo1,inttostr(num) + ' ' + filesearch.name);
       end;
   until FindNext( FileSearch ) <> 0;
   num := num -1;
   FindClose( FileSearch );
end;
Responder Con Cita
  #2  
Antiguo 13-04-2007
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Hola, para ver los directorios y archivos en un árbol, puede no ser muy recomendable hacerlo recursivamente. Toma en cuenta que si el directorio tiene muchas ramificaciones, el proceso puede ser muy lento y gastar muchos recursos.

Échale un ojo a http://www.clubdelphi.com/foros/showthread.php?t=24567, en donde puse un ejemplo adjunto que usa un treeview para ver directorios y archivos. La diferencia es que sólo leo un nivel y el resto sólo conforme el usuario va expandiendo las ramas.

// Saludos
Responder Con Cita
  #3  
Antiguo 13-04-2007
mierda mierda is offline
Miembro
 
Registrado: may 2006
Posts: 129
Poder: 19
mierda Va por buen camino
Muchas gracias

Hola Roman, muchas gracias por contestar ... la verdad es q para q quiero rellenar todo el directorio si a lo mejor no llegan a entrar ???? asi q tu ejemplo es perfecto!!!!! ... yo no se que haria sin vusutros!!!!

Un saludo

PD: Lo que ya seria lo mas ... es que supiera como ir navengado hacia arriba para construir la ruta completa .... voy a ver si lo encuentro! un saludo

Última edición por mierda fecha: 13-04-2007 a las 19:30:33.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Rellenar con 0.... buitrago Varios 6 17-11-2011 20:02:53
Copiar un treeview a otro treeview mierda OOP 0 26-07-2006 12:29:17
Rellenar cadena andressanchez .NET 3 05-06-2006 20:47:02
Como utilizar el Treeview, desplegar la info del arbol binario al treeview leo21 Varios 2 08-04-2004 22:47:30
Como utilizar el Treeview, desplegar la info del arbol binario al treeview leo21 OOP 1 08-04-2004 22:42:44


La franja horaria es GMT +2. Ahora son las 07:36:30.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi