CB_FINDSTRING
An
application sends a CB_FINDSTRING message to search the list box of a combo box
for an item beginning with the characters in a specified string.
CB_FINDSTRING
wParam = (WPARAM) indexStart; // item before start of search
lParam = (LPARAM) (LPCSTR) lpszFind // prefix string address
Parameters
indexStart
Value of wParam.
Specifies the zero-based index of the item preceding the first item to be
searched. When the search reaches the bottom of the list box, it continues from
the top of the list box back to the item specified by the indexStart
parameter. If indexStart is -1, the entire list box is searched from the beginning.
lpszFind
Value of lParam.
Points to the null-terminated string that contains the prefix to search for.
The search is not case sensitive, so this string can contain any combination of
uppercase and lowercase letters.
Return Values
The return
value is the zero-based index of the matching item. If the search is
unsuccessful, it is CB_ERR.
Remarks
If you create
the combo box with an owner-drawn style but without the CBS_HASSTRINGS style,
what the CB_FINDSTRING message does depends on whether your application uses
the CBS_SORT style. If you use the CBS_SORT style, WM_COMPAREITEM messages are
sent to the owner of the combo box to determine which item matches the
specified string. If you do not use the CBS_SORT style, the CB_FINDSTRING message
searches for a list item that matches the value of the lpszFind
parameter.
See Also