Подскажите пожалуйста, что я неправильно делаю? Или чего не делаю?
Пробовал написать ComboBox со строками разного цвета. Вроде получилость, но строки в выпадающем окне рисуются как надо, а вот выбранный итем в окошке не отображается. То есть там вообще ничего не рисуется. Очевидно я что-то упустил... Вот мой код.
case WM_DRAWITEM:
{
DWORD RetCode;
LPDRAWITEMSTRUCT lpdis = (LPDRAWITEMSTRUCT) lParam;
//Проверяем комбобокс ли это и нужный ли он?
if(!lpdis->CtlType==ODT_COMBOBOX)
break;
if(!lpdis->CtlID==IDC_TEXTURE)
break;
RetCode=0;
COLORREF MyColor;
//Номер отрисовываемого итема
switch (lpdis->itemID)
{
case 0:
MyColor=RGB(128,0,0);
break;
case 1:
MyColor=RGB(0,128,0);
break;
case 2:
MyColor=RGB(0,0,128);
break;
default:
MyColor=RGB(128,128,128);
break;
}
//Задаем цвет текста
SetTextColor(lpdis->hDC,MyColor);
//Рисуем текст
RetCode=DrawText(lpdis->hDC,pszCombo4[lpdis->itemID],lstrlen(pszCombo4[lpdis->itemID]),&lpdis->rcItem,DT_LEFT);
break;
}
Заранее благодарен.