WM_MEASUREITEM (Windows Embedded CE 6.0)

1/6/2010

This message is sent to the owner window of an owner-drawn button or menu item when the control or menu is created.

Syntax

WM_MEASUREITEM idCtl = (UINT) wParam; 
    lpmis = (LPMEASUREITEMSTRUCT) lParam;

Parameters

  • idCtl
    Contains the value of the CtlID member of the MEASUREITEMSTRUCT structure pointed to by the lpmis parameter. This value identifies the control that sent the WM_MEASUREITEM message.

    If the value is zero, the message was sent by a menu. If the value is nonzero, the message was sent by a combo box or by a list box. If the value is nonzero, and the value of the itemID member of the MEASUREITEMSTRUCT pointed to by lpmis is (UINT) –1, the message was sent by a combo edit field.

  • lpmis
    Long pointer to a MEASUREITEMSTRUCT structure that contains the dimensions of the owner-drawn control or menu item.

Return Value

An application should return TRUE if it processes this message.

Remarks

When the owner window receives the WM_MEASUREITEM message, the owner fills in the MEASUREITEMSTRUCT structure pointed to by the lParam parameter of the message and returns; this informs the system of the dimensions of the control. If a list box or combo box is created with the LBS_OWNERDRAWVARIABLE or CBS_OWNERDRAWVARIABLE style, this message is sent to the owner for each item in the control; otherwise, this message is sent once.

The system sends the WM_MEASUREITEM message to the owner window of combo boxes and list boxes created with the OWNERDRAWFIXED style before sending the WM_INITDIALOG message. As a result, when the owner receives this message, the system has not yet determined the height and width of the font used in the control; function calls and calculations requiring these values should occur in the main function of the application or library.

Requirements

Header winuser.h
Windows Embedded CE Windows CE 1.0 and later

See Also

Reference

Combo Boxes Messages
SendMessage
MEASUREITEMSTRUCT