Visual c++ 如何在组合框中获取当前选择的值(字符串)?

Visual c++ 如何在组合框中获取当前选择的值(字符串)?,visual-c++,mfc,visual-c++-6,Visual C++,Mfc,Visual C++ 6,如何在组合框中获取当前选择的值(字符串) (不是整数索引)可能有更好的方法(我的MFC有点生锈),但似乎您应该能够调用CComboBox::GetLBText(),使用CComboBox::GetCurSel()将当前选择传递给它使用GetLBText,传递索引和CString对象 编辑:太慢了 返回整数索引 CB_GETLBTEXT在CB_GETCURSEL返回字符串,一个普通的GetWindowText也可以工作 Edit:正如ajryan指出的那样,GetWindowText实际上在CBN

如何在组合框中获取当前选择的值(字符串)


(不是整数索引)

可能有更好的方法(我的MFC有点生锈),但似乎您应该能够调用
CComboBox::GetLBText()
,使用
CComboBox::GetCurSel()
将当前选择传递给它使用GetLBText,传递索引和CString对象


编辑:太慢了

返回整数索引
CB_GETLBTEXT
CB_GETCURSEL
返回字符串,一个普通的
GetWindowText
也可以工作


Edit:正如ajryan指出的那样,
GetWindowText
实际上在
CBN\u SELCHANGE
处理程序中不起作用,因为新的选择已经生效,但是在发送
WM\u命令时,窗口文本没有用新选择的文本更新。

您可能是在说“嗯”因为您试图在CBN_SELCHANGE处理程序中查看新值。这是在提交更改之前触发的,但GetLBText此时已具有访问权限..Hmmm。看来你是对的。我想我以前从未试过。有点奇怪,因为在提交更改之前通常会有一个“更改”通知,在提交更改之后通常会有一个“更改”通知,但组合框似乎不是这样。