Compartir a través de


CWnd::DlgDirList

Llena un cuadro de lista con un archivo o una lista de directorios.

int DlgDirList(
   LPTSTR lpPathSpec,
   int nIDListBox,
   int nIDStaticPath,
   UINT nFileType 
);

Parámetros

  • lpPathSpec
    Señala una cadena terminada en null que contiene la ruta o el nombre de archivo.DlgDirList modifica esta cadena, que debe ser de tiempo suficiente contener las modificaciones.Para obtener más información, vea la siguiente sección de “notas”.

  • nIDListBox
    especifica el identificador de un cuadro de lista.Si nIDListBox es 0, DlgDirList supone que ningún cuadro de lista existe y no intenta rellenar uno.

  • nIDStaticPath
    Especifica el identificador del control de texto estático se utiliza para mostrar la unidad o el directorio actual.Si nIDStaticPath es 0, DlgDirList supone que no hay tal control de texto presente.

  • nFileType
    Especifica los atributos de los archivos que se van a mostrar.Puede ser cualquier combinación de los siguientes valores:

    • Archivos de datos de la Leer-escritura deDDL_READWRITE sin atributos adicionales.

    • Archivos de solo lectura deDDL_READONLY .

    • Archivos ocultos deDDL_HIDDEN .

    • Archivos de sistema deDDL_SYSTEM .

    • Directorios deDDL_DIRECTORY .

    • Archivos deDDL_ARCHIVE .

    • DDL_POSTMSGS   indicador deLB_DIR .Si se establece la marca de LB_DIR , Windows hace que los mensajes generados por DlgDirList en la cola de la aplicación; si no, se envían directamente al cuadro de diálogo.

    • Unidades deDDL_DRIVES .Si se establece la marca de DDL_DRIVES , el indicador de DDL_EXCLUSIVE se establece automáticamente.Por consiguiente, para crear una lista de directorios que incluya las unidades y archivos, debe llamar a DlgDirList dos veces: una vez con la marca de DDL_DRIVES y otra con los mensajes para el resto de la lista.

    • Bit deDDL_EXCLUSIVE Exclusive.Si se establece el bit exclusivo, solo los archivos del tipo especificado se muestran; los archivos si no normales y del tipo especificado se enumeran.

Valor devuelto

Distinto de cero si la función es correcta; si no 0.

Comentarios

DlgDirList envía los mensajes de LB_RESETCONTENT y de LB_DIR el cuadro de lista.Rellena el cuadro de lista especificado por nIDListBox con los nombres de todos los archivos que coinciden con la ruta de acceso especificada por lpPathSpec.

El parámetro de lpPathSpec tiene el siguiente formato:

[drive:] [ [\u]directory[\idirectory]... \u] [filename]

En este ejemplo, drive es una letra de unidad, directory es un nombre de directorio válido, y el nombre de archivo es un nombre de archivo válido que debe contener al menos un carácter comodín.Los comodines son un signo de interrogación (¿?), lo que significa que la coincidencia cualquier carácter, y un asterisco (*), que la coincidencia cualquier número de caracteres.

Si especifica 0 cadenas de longitud para lpPathSpec, o si sólo especifica un nombre de directorio pero no incluye ninguna especificación de archivo, la cadena se cambiará a “*.*”.

Si lpPathSpec incluye una unidad o un nombre de directorio, la unidad o el directorio actual se cambian a la unidad y el directorio notifican antes de que se rellene el cuadro de lista.El control de texto identificado por nIDStaticPath también se actualiza con la nueva unidad y/o nombre de directorio.

Después de que se rellene el cuadro de lista, lpPathSpec está actualizado quitando la unidad o a la parte del directorio de la ruta.

Ejemplo

// If pDialog points to a CDialog object with a list box
// with the identifier IDC_DIRLIST, this call will populate
// the box with only the non-hidden subdirectories in the root
// directory of the C:\ drive.
TCHAR path[MAX_PATH];
_tcscpy_s(path, MAX_PATH, _T("C:\\"));

pDialog->DlgDirList(path, IDC_DIRLIST, 0, DDL_EXCLUSIVE | DDL_DIRECTORY);

Requisitos

encabezado: afxwin.h

Vea también

Referencia

Clase de CWnd

Gráfico de jerarquía

CWnd::DlgDirListComboBox

DlgDirList