CListCtrl控件怎么重画 用ctrllist.deleteitem...删除所有数据..然后再加载数据~~~~ 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://www.vckbase.com/document/viewdoc/?id=1480 重写CListCtrl类,也就是写一个继承至CListCtrl的新类,然后重载OnDrawItem( int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct );在OnDrawItem内实现重画。 重载ListCtrl的NM_CUSTOMDRAW消息,下面给你一段重载的代码:下面的代码是实现隔行显示不同的背景颜色。void CInfoList::OnCustomDraw(NMHDR *pNMHDR, LRESULT *pResult){ NMLVCUSTOMDRAW* pLVCD = reinterpret_cast<NMLVCUSTOMDRAW*>(pNMHDR); *pResult = CDRF_DODEFAULT; if (pLVCD->nmcd.dwDrawStage == CDDS_PREPAINT) { *pResult = CDRF_NOTIFYITEMDRAW; } else if (pLVCD->nmcd.dwDrawStage == CDDS_ITEMPREPAINT) { *pResult = CDRF_NOTIFYSUBITEMDRAW; } else if (pLVCD->nmcd.dwDrawStage == (CDDS_ITEMPREPAINT | CDDS_SUBITEM)) { int nItem = static_cast<int> (pLVCD->nmcd.dwItemSpec); int nSubItem = pLVCD->iSubItem; if(nItem % 2){ pLVCD->clrTextBk = RGB(150,150,150); pLVCD->clrText = RGB(0, 100, 150); } else{ pLVCD->clrTextBk = RGB(200,200,200); pLVCD->clrText = RGB(0, 100, 150); } pLVCD->clrTextBk = RGB(200,200,200); *pResult = CDRF_SKIPDEFAULT; // We've painted everything. }} 新手求解 请教高人 ,低手直接跳过 CString类 , Format 成员函数 请教:有没有支持智能卡的windows远程登录或者远程桌面软件? 最后50分,大家帮帮忙吧~ 请问Raw socket能过滤数据包吗? VC++6.0中,怎么调用WMI啊 怎么用vc做一个输入法阿,然后我的vc应用程序这头能用到这个输入法 classwizard的问题,密切关注中!!! ?Word文档的批阅 问一下:有没有关于视频图像的轮廓线提取与检测方面的源代码 函数结构体什么意思
然后重载OnDrawItem( int nIDCtl, LPDRAWITEMSTRUCT lpDrawItemStruct );
在OnDrawItem内实现重画。
下面的代码是实现隔行显示不同的背景颜色。
void CInfoList::OnCustomDraw(NMHDR *pNMHDR, LRESULT *pResult)
{
NMLVCUSTOMDRAW* pLVCD = reinterpret_cast<NMLVCUSTOMDRAW*>(pNMHDR);
*pResult = CDRF_DODEFAULT;
if (pLVCD->nmcd.dwDrawStage == CDDS_PREPAINT)
{
*pResult = CDRF_NOTIFYITEMDRAW;
}
else if (pLVCD->nmcd.dwDrawStage == CDDS_ITEMPREPAINT)
{
*pResult = CDRF_NOTIFYSUBITEMDRAW;
}
else if (pLVCD->nmcd.dwDrawStage == (CDDS_ITEMPREPAINT | CDDS_SUBITEM))
{
int nItem = static_cast<int> (pLVCD->nmcd.dwItemSpec);
int nSubItem = pLVCD->iSubItem; if(nItem % 2){
pLVCD->clrTextBk = RGB(150,150,150);
pLVCD->clrText = RGB(0, 100, 150);
}
else{
pLVCD->clrTextBk = RGB(200,200,200);
pLVCD->clrText = RGB(0, 100, 150);
}
pLVCD->clrTextBk = RGB(200,200,200); *pResult = CDRF_SKIPDEFAULT; // We've painted everything.
}
}