tipos resueltos restaurante que ppt para opinion metodo empresas ejemplos ejecutiva cola coca aplican delphi opendialog

resueltos - Delphi-cómo obtener una lista de todos los archivos del directorio



opinion ejecutiva (4)

Estoy trabajando con Delphi, quiero una lista de todos los archivos de un directorio cuando ejecuto openpicturedialog.

es decir, cuando se ejecuta el cuadro de diálogo abierto y selecciono un archivo de él, quiero la lista de todos los archivos del directorio del archivo seleccionado.

Incluso puede sugerirme que obtenga el nombre de directorio de la propiedad FileName de TOpenDialog
Gracias.


@Himadri, el objetivo principal de OpenPictureDialog no es seleccionar un directorio. De todos modos, si está utilizando este cuadro de diálogo con otro propósito, puede probar este código.

Var Path : String; SR : TSearchRec; DirList : TStrings; begin if OpenPictureDialog1.Execute then begin Path:=ExtractFileDir(OpenPictureDialog1.FileName); //Get the path of the selected file DirList:=TStringList.Create; try if FindFirst(Path + ''*.*'', faArchive, SR) = 0 then begin repeat DirList.Add(SR.Name); //Fill the list until FindNext(SR) <> 0; FindClose(SR); end; //do your stuff finally DirList.Free; end; end; end;


Cambie la propiedad de filtro en su OpenPictureDialog para incluir todos los archivos:

All (*.*)

Edición : no creo que pueda seleccionar un directorio en un cuadro de diálogo Abrir (imagen), seguramente no es el propósito de un OpenPictureDialog de todos modos. Quizás this es lo que buscas.

Luego use FindFirst y FindNext para obtener los archivos en este directorio.


Puede usar la función extractFilePath para obtener el nombre del directorio:

myPath := extractFilePath(FileName);

donde NombreDeArchivo es el nombre del archivo que elige por OpenDialog.


Si usa Delphi 2010, entonces puede usar tdirectory.getfiles primero agregue ioutils.pas para usar la cláusula y luego escriba la siguiente línea de código en el controlador de eventos (además del código que ya tiene en ese controlador de eventos)

uses IOUtils; var path : string; begin for Path in TDirectory.GetFiles(OpenPictureDialog1.filename) do Listbox1.Items.Add(Path);{assuming OpenPictureDialog1 is the name you gave to your OpenPictureDialog control} end;