listctrl根据不同的内容设置不同的颜色

自绘listctrl,并添加ON_NOTIFY_REFLECT(NM_CUSTOMDRAW, OnNMCustomdraw) 消息关联

void CMyList::OnNMCustomdraw(NMHDR *pNMHDR, LRESULT *pResult)
{
// TODO: Add your control notification handler code here

LPNMLVCUSTOMDRAW lplvcd = (LPNMLVCUSTOMDRAW)pNMHDR;  

if(lplvcd->nmcd.dwDrawStage == CDDS_PREPAINT)  
    *pResult = CDRF_NOTIFYITEMDRAW;  

if(lplvcd->nmcd.dwDrawStage == CDDS_ITEMPREPAINT)  
{  
    CString strTemp =GetItemText(lplvcd->nmcd.dwItemSpec,5);
    if(strTemp.Compare(_T("UDP"))==0)
    {
        lplvcd->clrText = RGB(0, 0, 255);  
        lplvcd->clrTextBk=RGB(255,174,201);
    }
    else if (strTemp.Compare(_T("TCP"))==0)
    {
        lplvcd->clrText = RGB(0, 0, 255);  
        lplvcd->clrTextBk=RGB(188,234,0);

    }
    else if (strTemp.Compare(_T("ARP"))==0)
    {
        lplvcd->clrText = RGB(0, 0, 255);  
        lplvcd->clrTextBk=RGB(255,0,0);

    }
    else 
    {
        lplvcd->clrText = RGB(0, 0, 255);  
        lplvcd->clrTextBk=RGB(255,255,0);
    }
    *pResult = CDRF_DODEFAULT;  
}  

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值