Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Llamado por el marco cuando un cuadro de lista con un estilo de dibujo propietario se crea.
virtual void MeasureItem(
LPMEASUREITEMSTRUCT lpMeasureItemStruct
);
Parámetros
- lpMeasureItemStruct
Un puntero largo en una estructura de MEASUREITEMSTRUCT .
Comentarios
De forma predeterminada, esta función miembro no hace nada.Invalide esta función miembro y rellenar la estructura de MEASUREITEMSTRUCT para informar a Windows las dimensiones del cuadro de lista.Si el cuadro de lista se crea con el estilo de LBS_OWNERDRAWVARIABLE , el marco de trabajo llama a esta función miembro para cada elemento del cuadro de lista.Si no, se llama a este miembro sólo una vez.
Para obtener más información sobre cómo utilizar el estilo de LBS_OWNERDRAWFIXED en un cuadro de lista de dibujo propietario creado con la función miembro de SubclassDlgItem de CWnd, vea la explicación de nota técnica 14.
Vea CWnd:: OnMeasureItem para obtener una descripción de la estructura**.**de MEASUREITEMSTRUCT
Ejemplo
// CMyODListBox is my owner-drawn list box derived from CListBox. This
// example measures an item and sets the height of the item to twice the
// vertical extent of its text. The list box control was created with the
// following code:
// m_myODListBox.Create(
// WS_CHILD|WS_VISIBLE|WS_BORDER|WS_HSCROLL|WS_VSCROLL|
// LBS_SORT|LBS_MULTIPLESEL|LBS_OWNERDRAWVARIABLE|LBS_WANTKEYBOARDINPUT,
// CRect(10,250,200,450), pParentWnd, IDC_MYODLISTBOX);
//
void CMyODListBox::MeasureItem(LPMEASUREITEMSTRUCT lpMeasureItemStruct)
{
ASSERT(lpMeasureItemStruct->CtlType == ODT_LISTBOX);
LPCTSTR lpszText = (LPCTSTR) lpMeasureItemStruct->itemData;
ASSERT(lpszText != NULL);
CSize sz;
CDC* pDC = GetDC();
sz = pDC->GetTextExtent(lpszText);
ReleaseDC(pDC);
lpMeasureItemStruct->itemHeight = 2*sz.cy;
}
Requisitos
encabezado: afxwin.h