Сообщение CB_GETLBTEXT

Const CB_GETLBTEXT = &H148

Сообщение CB_GETLBTEXT возвращает текст элемента списка комбинированного окна ComboBox

Возвращаемое значение

В успешном случае сообщение возвращает длину строки, передаваемой в переменную lParam без завершающего нулевого символа. В случае ошибки возвращается -1

Параметры

wParam
Отсчитываемый от нуля индекс элемента списка
lParam
Строка для приема текста элемента списка. Строка должна иметь достаточно места для приема текста с завершающим нулевым символом

Пример

' Определяем текст выбранного элемента списка комбинированного окна
' Вы должны создать элемент управления Combo1
' и заполнить список
Dim index As Long   ' индекс выбранного элемента
Dim itemtext As String ' текст выбранного элемента
Dim textlen As Long  ' длина текста выбранного элемента списка

' Определяем индекс выбранного элемента списка
index = SendMessage(Combo1.hWnd, CB_GETCURSEL, ByVal 0, ByVal 0)
' Возможные варианты
Select Case index
Case -1
    Debug.Print "Никакой элемент списка не выбран"
Case Else ' Если есть выбранный элемент,
' то определяем длину текста элемента
	textlen = SendMessage(Combo1.hWnd, CB_GETLBTEXTLEN, ByVal index, ByVal 0)
' Создаем буфер для приема строки, включая завершающий нулевой символ
	itemtext = Space(textlen) & vbNullChar
' Отображаем текст
	textlen = SendMessage(Combo1.hWnd, CB_GETLBTEXT, ByVal index, ByVal itemtext)
	itemtext = Left(itemtext, textlen)
	Debug.Print "Выбранный элемент: "; itemtext
End Select

Смотри также

CB_GETLBTEXTLEN

Категория

Комбинированное окно