Delphi - Cargar en una lista los archivos de un directorio

 
Vista:

Cargar en una lista los archivos de un directorio

Publicado por Martin_Artaza (72 intervenciones) el 23/12/2005 03:21:50
Hola a todos y feliz navidad JO JO JO.
Lo que tengo es el componente SuiSkins que tiene una propiedad que es una lista que se la carga con todos los Skins que uno quiere, lo que yo quiero hacer es que esa lista se cargue con los skins que hay en un directorio
" application + '\Skins\' "
lo que hice hasta el momento es, en el evento create del formulario puse


Str:= leftStr(application.exename, 11) + '\Skins\' ;
skins.propiedad-que-no-acuerdo-el-nombre.items[0] := Str + 'archivo1.sui';
skins.propiedad-que-no-acuerdo-el-nombre.items[1] := Str + 'archivo1.sui';
skins.propiedad-que-no-acuerdo-el-nombre.items[2] := Str + 'archivo1.sui';
skins.propiedad-que-no-acuerdo-el-nombre.items[3] := Str + 'archivo1.sui';
....
....

El error que me causa es que cuando uno borra un archivo de la carpeta skins y despues
ejecuta el programa y elige ese skin se traba el programa por eso quiero que si borra o no hay skins en dicha carpeta no se active el skins y si uno pone un skins nuevo se cargue.

para que no sepa lo de skins haga de cuenta que son imagen a ver si me entiende, desde ya muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Cargar en una lista los archivos de un director

Publicado por BigLuis (713 intervenciones) el 23/12/2005 07:35:01
Para localizar todos los ficheros que quieras en un directorio puedes utilizar las funciones FindFirst y FindNext (mira la ayuda) que van muy bien (si no consigues hacerlas funcionar dilo y te pondre un ejemplo pero primero comete el coco un poco). Despues, si la propiedad Items de SuisKin es del tipo TListItem yo en vez de
skins.propiedad-que-no-acuerdo-el-nombre.items[0] := Str + 'archivo1.sui';
utilizaria
skins.propiedad-que-no-acuerdo-el-nombre.items.Add( 'archivo1.sui');
y asi con cada fichero de skin encontrado que actualizaria cada vez que inicio la aplicacion o cuando quieras.
Tambien puedes utilizar en vez de Add, Insert si quieres intercalar skins.
Por cierto echale un vistazo a AlphaControls. Tambien son de pago pero puedes encontrarlos en el mismo sitio que Suiskin y son muy buenos.
Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE: Muchas gracias compadre

Publicado por Martin_artaza (72 intervenciones) el 26/12/2005 00:39:16
Muchas gracias, le echare un vistaso.
Feliz navidad y prospero 2006.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Cargar en una lista los archivos de un director

Publicado por Martin_artaza (72 intervenciones) el 27/12/2005 02:50:47
Sabes me vendria bien tu codigo de ejemplo, te agradeceria que me lo envies.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Cargar en una lista los archivos de un director

Publicado por BigLuis (713 intervenciones) el 27/12/2005 17:31:05
Esta rutina es para buscar todas las canciones mp3 de un Directorio

PrimeroMP3:TSearchRec;
Encontrado:Integer; //Es el resultado de la busqueda que se iguala a 0 si es positiva
begin
ListaCanciones.Items.Clear;
try
begin
Encontrado:=FindFirst(Directorio+'*.mp*',faAnyFile mod faDirectory,Primeromp3);
While (eNCONTRADO=0) do
begin
Extension:=extractfileext(PrimeroMP3.Name);
Cancion:=PrimeroMP3.Name;
Application.ProcessMessages;
//********************************************
Listacancines.Items.Add(Directorio+Cancion);
encontrado:=FindNext(PrimeroMP3); //busca la siguiente y comienza el bucle
end;
finally
FindClose(PrimeroMP3);//Se libra el objet TSerarchRec
end
end;

Suerte
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar