Как я могу получить значение (строку) текущего выделения в выпадающем списке? - PullRequest
15 голосов
/ 26 января 2009

Как я могу получить значение (строку) текущего выделения в выпадающем списке?

(не целочисленный индекс)

Ответы [ 4 ]

23 голосов
/ 26 января 2009

Возможно, есть лучший способ (мой MFC немного заржавел), но кажется, что вы должны иметь возможность вызвать CComboBox::GetLBText(), передав ему текущий выбор, используя CComboBox::GetCurSel().

8 голосов
/ 27 января 2009

Старый добрый GetWindowText тоже работает.

Редактировать: Как указывает Айриан, GetWindowText на самом деле не не работает в обработчике CBN_SELCHANGE, потому что новый выбор вступил в силу, но текст окна не имеет ' t был обновлен с текстом нового выбора при отправке WM_COMMAND.

4 голосов
/ 26 января 2009

Используйте GetLBText, передавая индекс и объект CString.

редактировать: слишком медленно!

0 голосов
/ 26 января 2009

CB_GETCURSEL возвращает целочисленный индекс CB_GETLBTEXT возвращает строку в CB_GETCURSEL

...