gpt4 book ai didi

c++ - Win32 C++ 从元素中获取文本

转载 作者:行者123 更新时间:2023-11-28 07:44:57 25 4
gpt4 key购买 nike

虽然这个问题之前可能已被问过一千次(我很确定我已经阅读了一千个答案)。我还是不明白。

假设我有一个函数可以像这样创建一个 ComboBox:

  scopeComboSelector=CreateCombobox(hwnd,
GetModuleHandle(0),
CBS_DROPDOWNLIST,
re,
IDCC_DROPDOWNLIST_SCOPE_SELECTOR,
_T("Scopes"));

其中“re”是一个定位矩形。 IDCC_DROPDOWNLIST_SCOPE_SELECTOR(很长的名字)是组合框的 ID。现在的重点是,我实际上可以填写这个“下拉选择列表”,但我不知道如何简单地将当前选择的值作为字符串获取。

我已经看到大约 10 种方法可以做到这一点,所有方法都会立即出错(需要转换为 LPWSTR -> 更恐怖地修复结果)。

也许我只是习惯了 Java,可以简单地说:

 textfield.getText();

如何在 Win32 C++(Microsoft Visual Studio)中实现这一目标?

编辑

我用过的代码:

  char userName[_MAX_PATH+1];
GetDlgItemTextW(scopeComboSelector,
IDCC_DROPDOWNLIST_SCOPE_SELECTOR,
(LPWSTR)userName,
200);

返回:用户名==空

更新

现在使用:GetDlgItemText()。调试器告诉我 userName = ""的值

最佳答案

documentation有一个 C 风格的 Windows 9x 代码示例。

您只需用 C++ 替换 C,用 wchar_t 和 friend 替换 Windows 9x 愚蠢的 T 宏。

阅读文档总是一个好主意。

关于c++ - Win32 C++ 从元素中获取文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15072898/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com