Поделиться через


CWnd::DlgDirListComboBox

Заполняет список полей со списком с листингом файла или каталога.

int DlgDirListComboBox(
   LPTSTR lpPathSpec,
   int nIDComboBox,
   int nIDStaticPath,
   UINT nFileType 
);

Параметры

  • lpPathSpec
    Указывает на null- завершенной строке, которая содержит путь или имя файла.DlgDirListComboBox изменяет эту строку, поэтому эти данные не должны быть в формате строкового литерала.См. следующий раздел "примечания".

  • nIDComboBox
    Задает идентификатор поля со списком в диалоговом окне.Если nIDComboBox 0, то DlgDirListComboBox предполагается отсутствие поле со списком не существует, и не пытается заполнить одно.

  • nIDStaticPath
    Указывает идентификатор элемента управления статический- текста, используемого для отображения текущих диска и каталога.Если nIDStaticPath 0, то DlgDirListComboBox предполагается, что такое текстовый элемент управления отсутствует.

  • nFileType
    Определяет атрибуты файла DOS файлов для отображения.Может быть любым сочетанием следующих значений:

    • Файлы данных Чтени-записи DDL_READWRITE без дополнительных атрибутов.

    • Файл, доступный только для чтения DDL_READONLY.

    • Скрытые файлы DDL_HIDDEN.

    • Системные файлы DDL_SYSTEM.

    • Каталоги DDL_DIRECTORY.

    • DDL_ARCHIVE Файлов.

    • DDL_POSTMSGS   Пометить CB_DIR.Если пометить CB_DIR установлен, то Windows устанавливает сообщения, созданные DlgDirListComboBox в очередь приложения; в противном случае они отправлены непосредственно в процедуре диалогового окна.

    • Диски DDL_DRIVES.Если пометить DDL_DRIVES установлен, то пометить DDL_EXCLUSIVE устанавливается автоматически.Поэтому, чтобы создать список каталога, который включает диски и файлы, необходимо вызвать DlgDirListComboBox дважды: пометить раз, присвоив DDL_DRIVES и раз с флагами для остальной части списка.

    • Бит монопольного DDL_EXCLUSIVE.Если монопольный бит устанавливается только файлы указанного типа перечислены; в противном случае перечислены обычные файлы и файлы указанного типа.

Возвращаемое значение

Определяет результат функции.Он не равен нулю, если список выполненной, то даже пустой список.0 Возвращаемых значений означает, что входная строка не содержит допустимый путь поиска.

Заметки

DlgDirListComboBox отправляет сообщения CB_RESETCONTENT и CB_DIR в поле со списком.Он заполняет список полей со списком, указанного nIDComboBox с именами всех файлов, которые соответствуют пути, lpPathSpec.

Параметр lpPathSpec имеет следующую форму:

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

В этом примере drive буква диска, directory допустимое имя каталога и имя файла допустимое имя файла, должно содержать хотя бы один подстановочный знак.Подстановочные знаки вопросительный знак (?), что означает соответствие любой символ, звездочка (*), что означает соответствие любое число символов.

Если указать пустую строку для lpPathSpec, текущая папка будет использоваться и lpPathSpec не будет изменено.Если указать только имя каталога, но не включать никаких спецификацию файла, то будет изменена строка "*".

Если lpPathSpec включает диска и/или имя каталога, то текущие диск и каталог изменены записать в указанный диск и каталог, прежде чем список заполняется.Управление текст, указанный nIDStaticPath также обновлено с новыми диска и/или имя каталога.

После того как список полей со списком заполнен, lpPathSpec обновлено путем удаления часть диска и/или каталога пути.

Пример

// If pDialog points to a CDialog object with a combo box
// with the identifier IDC_DIRCOMBO, this call will populate
// the box with only the non-hidden subdirectories in the root
// directory of the C:\ drive. 

TCHAR szPath[MAX_PATH];
_tcsncpy_s(szPath, MAX_PATH, _T("C:\\"), MAX_PATH);
pDialog->DlgDirListComboBox(szPath, IDC_DIRCOMBO, 0, DDL_EXCLUSIVE | 
   DDL_DIRECTORY);

// Note that the first argument is a string and not a string 
// literal. This is necessary because DlgDirListComboBox 
// modifies the supplied string. Passing a string literal 
// will result in an access violation.   

Требования

Header: afxwin.h

См. также

Ссылки

Класс CWnd

Диаграмма иерархии

CWnd::DlgDirList

CWnd::DlgDirSelect

DlgDirListComboBox