Ver Mensaje Individual
  #5  
Antiguo 22-03-2009
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Reputación: 28
Lepe Va por buen camino
Si vas a tener muchos archivos, podrías tener un TStringlist ordenado alfabéticamente, de esta forma las búsquedas van a ser mucho más rápidas usando el típico stringlist1.indexof("miarchivo").

La ordenación del los TStringlist es un QuickSort, que viene de maravilla cuando son muchos elementos.

en ese stringlist, puedes tener un puntero almacenado en la propiedad Objects, que haría referencia al TListViewItem en cuestion con el resto de datos.

Estoy algo oxidado... pero más o menos:
Código Delphi [-]
var li:TListViewItem;
      Lista:TStringlist;
      nombre:string;
begin
   Lista := TStringlist.create;
   Lista.Sorted := True;
   Lista.duplicates:= dupIgnore // ??? seguro???

  for i:= 0 to 45 do
  begin 
      li := TListViewitem.Create(Listview1);
      ListView1.items.AddItem(li);
      nombre := 'archivo ' + inttostr(i);
      li.caption := nombre;
      lista.AddObject(nombre, li);
   end;

// para encontrar el archivo 32
if lista.indexof('archivo 32')<> -1 then
  ShowMessage('found');
end;
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita