DlgDirSelectComboBoxExA 函数 (winuser.h)

使用 DlgDirListComboBox 函数从填充的组合框中检索当前选定内容。 所选内容解释为驱动器号、文件或目录名称。

语法

BOOL DlgDirSelectComboBoxExA(
  [in]  HWND  hwndDlg,
  [out] LPSTR lpString,
  [in]  int   cchOut,
  [in]  int   idComboBox
);

参数

[in] hwndDlg

类型:HWND

包含组合框的对话框的句柄。

[out] lpString

类型:LPTSTR

指向接收所选路径的缓冲区的指针。

[in] cchOut

类型:int

lpString 参数指向的缓冲区的长度(以字符为单位)。

[in] idComboBox

类型:int

对话框中组合框控件的整数标识符。

返回值

类型:BOOL

如果当前选定内容是目录名称,则返回值为非零。

如果当前所选内容不是目录名称,则返回值为零。 若要获取扩展的错误信息,请调用 GetLastError

言论

如果当前选定内容指定目录名称或驱动器号,则 DlgDirSelectComboBoxEx 函数删除封闭方括号(以及驱动器号的连字符),以便名称或字母已准备好插入到新路径或文件名中。 如果没有选择,lpString 指向的缓冲区的内容不会更改

DlgDirSelectComboBoxEx 函数不允许从组合框中返回多个文件名。

如果字符串长或长于缓冲区,则缓冲区包含带终止 null 字符的截断字符串。

DlgDirSelectComboBoxExCB_GETCURSELCB_GETLBTEXT 消息发送到组合框。

可以将此函数用于所有三种类型的组合框(CBS_SIMPLECBS_DROPDOWN和CBS_DROPDOWNLIST)。

安全警告:使用此函数不当可能会导致应用程序出现问题。 例如,应为 ANSI 和 Unicode 版本正确设置 nCount 参数。 否则可能会导致缓冲区溢出。 应查看 安全注意事项:在继续操作之前Microsoft Windows 控件

Windows 95 或更高版本DlgDirSelectComboBoxExW 受 Unicode(MSLU)Microsoft层支持。 若要使用此功能,必须将某些文件添加到应用程序,如 Windows Me/98/95 系统上用于 Unicode 的 Microsoft 层中所述。

注意

winuser.h 标头将 DlgDirSelectComboBoxEx 定义为一个别名,该别名根据 UNICODE 预处理器常量的定义自动选择此函数的 ANSI 或 Unicode 版本。 将中性编码别名与不中性编码的代码混合使用可能会导致编译或运行时错误不匹配。 有关详细信息,请参阅函数原型的 约定。

要求

要求 价值
最低支持的客户端 Windows Vista [仅限桌面应用]
支持的最低服务器 Windows Server 2003 [仅限桌面应用]
目标平台 窗户
标头 winuser.h (包括 Windows.h)
User32.lib
DLL User32.dll

另请参阅

CB_GETCURSEL

CB_GETLBTEXT

DlgDirListComboBox

参考