Fungsi DlgDirListA (winuser.h)

Mengganti konten kotak daftar dengan nama subdirektori dan file dalam direktori tertentu. Anda dapat memfilter daftar nama dengan menentukan sekumpulan atribut file. Daftar ini dapat secara opsional menyertakan drive yang dipetakan.

Sintaks

int DlgDirListA(
  [in]      HWND  hDlg,
  [in, out] LPSTR lpPathSpec,
  [in]      int   nIDListBox,
  [in]      int   nIDStaticPath,
  [in]      UINT  uFileType
);

Parameter

[in] hDlg

Jenis: HWND

Handel ke kotak dialog yang berisi kotak daftar.

[in, out] lpPathSpec

Jenis: LPTSTR

Penunjuk ke buffer yang berisi string yang dihentikan null yang menentukan jalur absolut, jalur relatif, atau nama file. Jalur absolut dapat dimulai dengan huruf drive (misalnya, d:) atau nama UNC (misalnya, \<i>nama\mesin nama berbagi).

Fungsi membagi string menjadi direktori dan nama file. Fungsi ini mencari direktori untuk nama yang cocok dengan nama file. Jika string tidak menentukan direktori, fungsi akan mencari direktori saat ini.

Jika string menyertakan nama file, nama file harus berisi setidaknya satu karakter kartubebas (? atau *). Jika untai (karakter) tidak menyertakan nama file, fungsi bertindak seolah-olah Anda telah menentukan karakter kartubebas tanda bintang (*) sebagai nama file. Semua nama dalam direktori yang ditentukan yang cocok dengan nama file dan memiliki atribut yang ditentukan oleh parameter uFileType ditambahkan ke kotak daftar.

[in] nIDListBox

Jenis: int

Pengidentifikasi kotak daftar dalam kotak dialog hDlg . Jika parameter ini nol, DlgDirList tidak mencoba mengisi kotak daftar.

[in] nIDStaticPath

Jenis: int

Pengidentifikasi kontrol statis dalam kotak dialog hDlg . DlgDirList mengatur teks kontrol ini untuk menampilkan drive dan direktori saat ini. Parameter ini bisa nol jika Anda tidak ingin menampilkan drive dan direktori saat ini.

[in] uFileType

Jenis: UINT

Menentukan atribut file atau direktori yang akan ditambahkan ke kotak daftar. Parameter ini bisa menjadi satu atau beberapa nilai berikut.

Nilai Makna
DDL_ARCHIVE
Termasuk file yang diarsipkan.
DDL_DIRECTORY
Termasuk subdirektori. Nama subdirektori diapit dalam tanda kurung siku ([ ]).
DDL_DRIVES
Semua drive yang dipetakan ditambahkan ke daftar. Drive tercantum dalam formulir [- x-], di mana x adalah huruf kandar.
DDL_EXCLUSIVE
Hanya menyertakan file dengan atribut yang ditentukan. Secara default, file baca/tulis dicantumkan meskipun DDL_READWRITE tidak ditentukan.
DDL_HIDDEN
Termasuk file tersembunyi.
DDL_READONLY
Menyertakan file baca-saja.
DDL_READWRITE
Termasuk file baca/tulis tanpa atribut tambahan. Ini adalah pengaturan default.
DDL_SYSTEM
Termasuk file sistem.
DDL_POSTMSGS
Jika diatur, DlgDirList menggunakan fungsi PostMessage untuk mengirim pesan ke kotak daftar. Jika tidak diatur, DlgDirList menggunakan fungsi SendMessage .

Nilai kembali

Jenis: int

Jika fungsi berhasil, nilai yang dikembalikan bukan nol.

Jika fungsi gagal, nilai yang dikembalikan adalah nol. Misalnya, jika string yang ditentukan oleh lpPathSpec bukan jalur yang valid, fungsi akan gagal. Untuk mendapatkan informasi kesalahan yang diperluas, panggil .

Keterangan

Jika lpPathSpec menentukan direktori, DlgDirListComboBox mengubah direktori saat ini ke direktori yang ditentukan sebelum mengisi kotak daftar. Teks kontrol statis yang diidentifikasi oleh parameter nIDStaticPath diatur ke nama direktori baru saat ini.

DlgDirList mengirim pesan LB_RESETCONTENT dan LB_DIR ke kotak daftar.

Jika uFileType menyertakan bendera DDL_DIRECTORY dan lpPathSpec menentukan direktori tingkat pertama, seperti C:\TEMP, kotak daftar akan selalu menyertakan entri ".." untuk direktori akar. Ini benar meskipun direktori akar memiliki atribut tersembunyi atau sistem dan bendera DDL_HIDDEN dan DDL_SYSTEM tidak ditentukan. Direktori akar volume NTFS memiliki atribut tersembunyi dan sistem.

Daftar direktori menampilkan nama file panjang, jika ada.

Contoh

Misalnya, lihat topik berikut: Membuat Daftar Direktori dalam Kotak Daftar Pilihan tunggal dan Membuat Kotak Daftar Pilihan Ganda.

Catatan

Header winuser.h mendefinisikan DlgDirList sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header winuser.h (termasuk Windows.h)
Pustaka User32.lib
DLL User32.dll

Lihat juga

DlgDirListComboBox

DlgDirSelectComboBoxEx

DlgDirSelectEx

Referensi