DlgDirList函数使用与指定路径或文件名匹配的所有文件的名称填充指定的列表框。
int DlgDirList(
HWND 【hDlg】, | //使用列表框处理对话框 |
LPTSTR 【lpPathSpec】, | //指向路径或文件名字符串的指针 |
INT 【nIDListBox】, | //列表框的标识符 |
INT 【nIDStaticPath】, | //静态控件的标识符 |
UINT 【uFileType】 | //要显示的文件属性 |
); |
参数
【hDlg】
标识包含列表框的对话框。
【lpPathSpec】
指向包含路径或文件名的以null结尾的字符串。DlgDirList修改此字符串,该字符串应足够长以包含修改。有关此参数的详细信息,请参阅备注部分。
【nIDListBox】
指定列表框的标识符。如果此参数为零,DlgDirList假设没有列表框存在,并且不尝试填充一个。
【nIDStaticPath】
指定用于显示当前驱动器和目录的静态控件的标识符。如果此参数为零,则DlgDirList假设不存在此类控件。
【uFileType】
指定要显示的文件名的属性。此参数必须是以下值中的一个或多个:
值 | 描述 |
DDL_ARCHIVE | 包括归档文件。 |
DDL_DIRECTORY | 包括子目录。子目录名称用方括号括起来([ ])。 |
DDL_DRIVES | 包括驱动器。驱动器以[-【x】-]的格式列出,其中【x】是驱动器盘符。 |
DDL_EXCLUSIVE | 仅包含具有指定属性的文件。默认情况下,即使未指定DDL_READWRITE,也会列出读写文件。 |
DDL_HIDDEN | 包括隐藏文件。 |
DDL_READONLY | 包含只读文件。 |
DDL_READWRITE | 包含没有附加属性的读写文件。 |
DDL_SYSTEM | 包括系统文件。 |
DDL_POSTMSGS | 将消息发送到应用程序的消息队列。默认情况下,DlgDirList将消息直接发送到对话框过程。 |
返回值
如果列表__甚至是空列表__,则返回值不为零。如果输入字符串不包含有效的搜索路径,返回值为零。
备注
如果为【lpPathSpec】参数指定零长度字符串,或者仅指定不带文件名的目录名称,则字符串将更改为*。*
【lpPathSpec】参数的格式如下:
[【drive】:] [[\u]【目录】[\i【directory】]\u] [【filename】]
在此示例中,【驾驶】是驱动器号,【目录】是有效的目录名,【文件名】是必须包含至少一个通配符(?或*)的有效文件名。
如果【lpPathSpec】包含驱动器或目录名称或两者,则在列表框填充之前,将当前驱动器和目录更改为指定的驱动器和目录。由【nIDStaticPath】参数标识的静态控件也会使用新的驱动器或目录名或两者更新。
填写列表框后,DlgDirList通过删除路径和文件名的驱动器或目录部分,或两者更新【lpPathSpec】.
DlgDirList将LB_RESETCONTENT和LB_DIR消息发送到列表框。
也可以看看