Utilice archivos de Delphi y controles de directorio para imitar el Explorador de Windows

El Explorador de Windows es lo que usa en el sistema operativo Windows para buscar archivos y carpetas. Puede crear una estructura similar con Delphi para que el mismo contenido se complete dentro de la interfaz de usuario de su programa.

Los cuadros de diálogo comunes se usan en Delphi para abrir y guardar un archivo en una aplicación. Si desea utilizar administradores de archivos personalizados y cuadros de diálogo de exploración de directorios, debe tratar con los componentes Delphi del sistema de archivos.

El grupo de paleta Win 3.1 VCL incluye varios componentes que le permiten crear su propio cuadro de diálogo personalizado "Abrir archivo" o "Guardar archivo": TFileListBox, TDirectoryListBox, TDriveComboBox, y TFilterComboBox.

Navegando archivos

Los componentes del sistema de archivos nos permiten seleccionar una unidad, ver la estructura jerárquica de directorios de un disco y ver los nombres de los archivos en un directorio dado. Todos los componentes del sistema de archivos están diseñados para trabajar juntos.

Por ejemplo, su código verifica lo que el usuario ha hecho, por ejemplo, un DriveComboBox y luego pasa esta información a un DirectoryListBox. Los cambios en DirectoryListBox luego se pasan a un FileListBox en el que el usuario puede seleccionar los archivos necesarios.

Diseñando el formulario de diálogo

Inicie una nueva aplicación Delphi y seleccione la pestaña Win 3.1 de la paleta Componente. Luego haz lo siguiente:

  • Coloque un componente TFileListBox, TDirectoryListBox, TDriveComboBox y TFilterComboBox en un formulario, manteniendo todos sus nombres predeterminados
  • Agregue un TEdit (llamado "FileNameEdit") y un TLabel (llámelo "DirLabel").
  • Incluya algunas etiquetas con subtítulos, como "Nombre de archivo", "Directorio", "Lista de archivos de tipo" y "Unidades".

Para mostrar la ruta seleccionada actualmente como una cadena en un subtítulo de componentes DirLabel, asigne el nombre de la etiqueta a DirectoryListBox Propiedad DirLabel.

Si desea mostrar el nombre de archivo seleccionado en un EditBox (FileNameEdit), debe asignar el Nombre del objeto Editar (FileNameEdit) a FileListBox's Propiedad FileEdit.

Más líneas de código

Cuando tiene todos los componentes del sistema de archivos en el formulario, solo tiene que establecer la propiedad DirectoryListBox.Drive y la propiedad FileListBox.Directory para que los componentes se comuniquen y muestren lo que el usuario quiere ver..

Por ejemplo, cuando el usuario selecciona una nueva unidad, Delphi activa el DriveComboBox OnChange controlador de eventos. Haz que se vea así:

 procedimiento TForm1.DriveComboBox1Change (remitente: TObject);
beginDirectoryListBox1.Drive: = DriveComboBox1.Drive;
final;

Este código cambia la visualización en el DirectoryListBox activando su OnChange controlador de eventos:

 procedimiento TForm1.DirectoryListBox1Change (remitente: TObject);
beginFileListBox1.Directory: = DirectoryListBox1.Directory;
final;

Para ver qué archivo ha seleccionado el usuario, debe usar el OnDblClick evento de la FileListBox: