Owner drawn listbox not reaching MeasureItem
I am trying to create a list box that can word wrap along with having
a small icon in it. Right this moment though I'd be happy just to get
the strings to word wrap. In an example of an owner drawn list box I
found on CodeProject.com, the code jumps to MeasureItem right after
going to the winafx definition of AddString. Unfortunately, my code
does not although it seems to be similar in the places that matter.
What's worse is that the code from that project fails when placed in
mine. There must be some setting somewhere that needs changing. I
just don't know which it is. I have compared the properties of the
list boxes, and they seem to match up. The only thing I can think of
is that maybe since my project has to have WINVER defined as 0400 for
Windows 2000, which is the target platform, that maybe it is a
compatability issue. Am I on the right track or does someone else
have an idea? Here's the MeasureItem code although I don't think it
will help considering it is never reached:
void MultiLineListBox::MeasureItem(LPMEASUREITEMSTRUCT
lpMeasureItemStruct)
{
CFont *pFont = GetFont();
CRect Rect;
GetClientRect(&Rect);
CDC *pDC = GetDC();
CFont *pOldFont = pDC->SelectObject(pFont);
CString szText;
GetText(lpMeasureItemStruct->itemID, szText);
pDC->DrawText(szText, &Rect, DT_CALCRECT | DT_WORDBREAK);
pDC->SelectObject(pOldFont);
ReleaseDC(pDC);
lpMeasureItemStruct->itemHeight = Rect.Height() + 5;
lpMeasureItemStruct->itemWidth = Rect.Width();
}
By the way, I am running XP SP2 with VS 2005 SP1.