DlgDirList
La función DlgDirList llena el list box especificado con los nombres de todos los ficheros en el camino o nombre de fichero especificado.
Sintaxis
int DlgDirList( HWND hDlg, // manipulador de cuadro de diálogo con list box LPTSTR lpPathSpec, // puntero a cadena de camino o nombre de fichero int nIDListBox, // identificador de list box int nIDStaticPath, // identificador de control estático UINT uFileType // atributos de fichero a mostrar );
Parámetros
hDlg: identifica el cuadro de diálogo que contiene el list box.
lpPathSpec: apunta a una cadena terminada en cero que contiene el camino o el nombre de fichero. DlgDirList modifica esta cadena, de modo que debe ser lo suficientemente larga para contener las modificaciones. Para más información sobre este parámetro, ver la sección de observaciones.
nIDListBox: especifica el identificador de un list box. Si este parámetro es cero, DlgDirList asume que no existe list box y no intenta llenarlo.
nIDStaticPath: especifica el identificador del control estático usado para mostrar el disco y directorio actuales. Si este parámetro es cero, DlgDirList asume que no existe tal control.
uFileType: especifica los atributos de los nombres de fichero a mostrar. Este parámetro debe tener uno o más de los siguientes valores:
Valor | Descripción |
---|---|
DDL_ARCHIVE | Incluye los ficheros con bit de archivo. |
DDL_DIRECTORY | Incluye subdirectorios. Los nombres de subdirectorio se muestran entre corchetes ([ ]). |
DDL_DRIVES | Incluye unidades. Las unidades de almacenamiento se listan en el formato [-x-], donde x es la letra de la unidad. |
DDL_EXCLUSIVE | Incluye sólo ficheros con los atributos especificados. Por defecto, se muestran los ficheros de lectura-escritura aunque no se especifique el valor DDL_READWRITE. |
DDL_HIDDEN | Incluye ficheros ocultos. |
DDL_READONLY | Incluye ficheros de sólo lectura. |
DDL_READWRITE | Incluye ficheros de lectura-escritura sin atributos adicionales. |
DDL_SYSTEM | Incluye ficheros de sistema. |
DDL_POSTMSGS | Envía los mensajes lentos (post) a la cola de mensajes de la aplicación. Por defecto, DlgDirList envía los mensajes directamente al procedimiento de diálogo. |
Valor de retorno
Si se crea una lista, aunque sea una lista vacía, el valor de retorno es distinto de cero. Si la cadena de entrada no contiene un camino de búsqueda válido, el valor de retorno es cero.
Observaciones
Si se especifica una cadena de longitud cero para el parámetro lpPathSpec o si se especifica sólo un nombre de directorio sin nombre de fichero, la cadena se cambiará por *.*.
El parámetro lpPathSpec tiene el formato siguiente:
[drive:] [[\u]directory[\idirectory]\u] [filename]
En este ejemplo, drive es una letra de unidad de almacenamiento, directory es un nombre de directorio válido y filename es un nombre de fichero válido que debe contener al menos un comodín (? o *).
Si lpPathSpec incluye una unidad de almacenamiento o un nombre de directorio, o ambos, la unidad de almacenamiento y el directorio se cambian a los valores espeficados antes de que se llene el list box. El control estático identificado por el parámetro nIDStaticPath también se actualiza con la nueva unidad de almacenamiento o nombre de directorio, o ambos.
Después de que el list box se llene, DlgDirList actualiza lpPathSpec eliminando la porción de la unidad de almacenamiento o del directorio, o ambos, del camino o nombre de fichero.
DlgDirList envía los mensajes LB_RESETCONTENT y LB_DIR al list box.