CWnd::DlgDirListComboBox
Wypełnia pole listy, pola kombi z listą pliku lub katalogu.
int DlgDirListComboBox(
LPTSTR lpPathSpec,
int nIDComboBox,
int nIDStaticPath,
UINT nFileType
);
Parametry
lpPathSpec
Wskazuje ciąg zakończony znakiem null, zawierającą ścieżkę lub nazwę pliku.DlgDirListComboBoxModyfikuje ten ciąg, więc dane te nie powinny być w formie literał ciągu znaków.Zobacz sekcję "Uwagi".nIDComboBox
Określa identyfikator pola kombi w oknie dialogowym.Jeśli nIDComboBox jest 0, DlgDirListComboBox zakłada, że pole kombi nie istnieje i nie próbuje wypełnić jeden.nIDStaticPath
Określa identyfikator formantu tekstu statycznego, używany do wyświetlania bieżącego dysku i katalogu.Jeśli nIDStaticPath jest 0, DlgDirListComboBox zakłada, że brak kontroli tekstu jest obecny.nFileType
Określa atrybuty pliku DOS pliki mają być wyświetlane.Mogą to być dowolna kombinacja następujących wartości:DDL_READWRITE plików danych do odczytu i zapisu bez dodatkowych atrybutów.
DDL_READONLY pliki tylko do odczytu.
DDL_HIDDEN pliki ukryte.
DDL_SYSTEM systemu plików.
DDL_DIRECTORY katalogów.
DDL_ARCHIVE archiwów.
DDL_POSTMSGS CB_DIR flagi.Jeśli CB_DIR jest ustawiona flaga, system Windows umieszcza komunikaty generowane przez DlgDirListComboBox w kolejce aplikacji; w przeciwnym razie są wysyłane bezpośrednio do procedury okno dialogowe.
DDL_DRIVES dysków.Jeśli DDL_DRIVES jest ustawiona flaga DDL_EXCLUSIVE automatycznie ustawiona flaga.Dlatego, aby utworzyć listę katalogów dysków i plików, należy wywołać DlgDirListComboBox dwukrotnie: raz z DDL_DRIVES flagi zestawu i raz z flagami w pozostałej części listy.
DDL_EXCLUSIVE bit wyłączności.Jeśli wyłączne bit jest ustawiony, wyświetlane są tylko pliki określonego typu; w przeciwnym razie wymienionych zwykłych plików oraz pliki określonego typu.
Wartość zwracana
Określa wynik funkcji.Jest niezerowa dokonane aukcji, nawet pustą listę.Zwracana wartość 0 oznacza ciąg wejściowy nie zawierało ścieżki wyszukiwania prawidłowy.
Uwagi
DlgDirListComboBoxwysyła CB_RESETCONTENT i CB_DIR wiadomości do pola kombi.Wypełnia pole listy, pola kombi, określonej przez nIDComboBox z nazwami wszystkich plików spełniających ścieżki przez lpPathSpec.
lpPathSpec Parametr ma następującą postać:
[drive:] [ [\u]directory[\idirectory]... \u] [filename]
W tym przykładzie drive jest literą dysku, directory jest prawidłowa nazwa katalogu, i nazwę pliku jest prawidłową nazwą pliku musi zawierać co najmniej jeden symbol wieloznaczny.Symbole wieloznaczne są znakiem zapytania (?), dopasować oznacza dowolny znak, a gwiazdka (*), który oznacza dopasować dowolną liczbę znaków.
Jeżeli określono ciąg o zerowej długości dla lpPathSpec, będzie używany bieżący katalog i lpPathSpec , nie zostaną zmodyfikowane.Jeśli określ nazwę katalogu, ale nie zawierają żadnych specyfikacji pliku ciąg zostanie zmieniony na "*".
Jeśli lpPathSpec zawiera nazwę dysku lub katalogu bieżącego dysku i katalogu są zmieniane na wyznaczonych dysku i katalogu, przed wypełnione jest pole listy.Formant tekstu identyfikowane przez nIDStaticPath jest również aktualizowana nową nazwę dysku lub katalogu.
Po polu listy pola kombi jest wypełnione, lpPathSpec jest aktualizowana przez usunięcie dysku lub katalogu części ścieżki.
Przykład
// 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.
Wymagania
Nagłówek: afxwin.h