在MFC中更改组合框的项目背景颜色?

时间:2012-03-29 20:59:48

标签: c++ visual-c++ mfc

当我使用AddString方法时,我想更改组合框项目的背景颜色。

1 个答案:

答案 0 :(得分:2)

从CComboBox派生一个类并覆盖OnCtlColor。在OnCtlColor中,当nCtlColor参数为CTLCOLOR_LISTBOX时,调用DC :: SetBkColor方法。

也许是这样的:

HBRUSH CMyComboBox::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
    if (nCtlColor == CTLCOLOR_LISTBOX)
        pDC->SetBkColor(RGB(255, 0, 0));

    return CComboBox::OnCtlColor(pDC, pWnd, nCtlColor);
}

herehere获取的灵感。