WM_CHARTOITEM

The WM_CHARTOITEM message is sent by a list box with the LBS_WANTKEYBOARDINPUT style to its owner in response to a WM_CHAR message.

WM_CHARTOITEM 
nKey = LOWORD(wParam);          // key value 
nCaretPos = HIWORD(wParam);     // caret position 
hwndListBox = (HWND) lParam;    // handle to list box 
 

Parameters

nKey
Value of the low-order word of wParam. Specifies the value of the key the user pressed.
nCaretPos
Value of the high-order word of wParam. Specifies the current position of the caret.
hwndListBox
Value of lParam. Handle to the list box.

Return Values

The return value specifies the action that the application performed in response to the message. A return value of –1 or –2 indicates that the application handled all aspects of selecting the item and requires no further action by the list box. A return value of 0 or greater specifies the zero-based index of an item in the list box and indicates that the list box should perform the default action for the keystroke on the given item.

Default Action

The DefWindowProc function returns –1.

Remarks

Only owner-drawn list boxes that do not have the LBS_HASSTRINGS style can receive this message.

If a dialog box procedure handles this message, it should cast the desired return value to a BOOL and return the value directly. The DWL_MSGRESULT value set by the SetWindowLong function is ignored.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Requires version 2.0 or later.
  Header: Declared in winuser.h.

See Also

List Boxes Overview, List Box Messages, DefWindowProc, WM_CHAR, WM_VKEYTOITEM