LB_FINDSTRINGEXACT
An
application sends a LB_FINDSTRINGEXACT message to find the first list box
string that matches the string specified in the lpszFind parameter.
LB_FINDSTRINGEXACT
wParam = (WPARAM) indexStart; // item before start of search
lParam = (LPARAM)(LPCSTR)lpszFind; // address of
search string
Parameters
indexStart
Value of wParam.
Specifies the zero-based index of the item before 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.
Windows
95: The wParam parameter is
limited to 16-bit values. This means list boxes cannot contain more than 32,767
items. Although the number of items is restricted, the total size in bytes of
the items in a listbox is limited only by available memory.
lpszFind
Value of lParam.
Points to the null-terminated string to search for. This string can contain a
complete filename, including the extension. 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, or LB_ERR if the search was
unsuccessful.
Remarks
If an
application creates the list box with an owner-drawn style but without the
LBS_HASSTRINGS style, the action taken by LB_FINDSTRINGEXACT depends on whether
the LBS_SORT style is used. If LBS_SORT is used, the system sends
WM_COMPAREITEM messages to the list box owner to determine which item matches
the specified string. Otherwise, LB_FINDSTRINGEXACT attempts to match the
32-bit value against the value of the lpszFind parameter.
See Also