虽然这个问题可能已经被问过一千次了(很确定,我已经阅读了一千个答案)。我仍然没有得到它。
假设我有一个创建这样的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 ++(微软视觉工作室)中实现这一目标?
修改
我用过的代码:
char userName[_MAX_PATH+1];
GetDlgItemTextW(scopeComboSelector,
IDCC_DROPDOWNLIST_SCOPE_SELECTOR,
(LPWSTR)userName,
200);
返回:userName == empty
更新
现在使用:GetDlgItemText()。调试器告诉我userName =“”
的值答案 0 :(得分:1)