CB_GETLBTEXT

3.0

CB_GETLBTEXT
wParam = (WPARAM) index;                /* item index        */
lParam = (LPARAM) (LPCSTR) lpszBuffer;  /* address of buffer */

An application sends a CB_GETLBTEXT message to retrieve a string from the list box of a combo box.

Parameters

index

Value of wParam. Specifies the zero-based index of the string to retrieve.

lpszBuffer

Value of lParam. Points to the buffer that receives the string. The buffer must have sufficient space for the string and a terminating null character. A CB_GETLBTEXTLEN message can be sent before the CB_GETLBTEXT message to retrieve the length, in bytes, of the string.

Return Value

The return value is the length of the string, in bytes, excluding the terminating null character. If the index parameter does not specify a valid index, the return value is CB_ERR.

Comments

If the combo box was created with an owner-drawn style but without the CBS_HASSTRINGS style, the buffer pointed to by the lpszBuffer parameter of the message receives the doubleword value associated with the item.

Example

This example retrieves the length of the first item in the list box of a combo box, allocates sufficient memory for the string, and sends a CB_GETLBTEXT message to retrieve the string:

DWORD cbItemString;
PSTR psz;

cbItemString = SendDlgItemMessage(hdlg, ID_MYCOMBOBOX,
    CB_GETLBTEXTLEN, 0, 0L);
if (cbItemString != CB_ERR) {
    psz = (PSTR) LocalAlloc(LMEM_FIXED, (WORD) cbItemString);
    SendDlgItemMessage(hdlg, ID_MYCOMBOBOX,
        CB_GETLBTEXT, 0, (LPARAM) ((LPCSTR) psz));
}

See Also

CB_GETLBTEXTLEN