请问在自绘ClistCtrl的时候,如何给没有数据的行给填充上不同的背景色,类似迅雷一样!

wangqiu111 2011-01-20 02:16:34
请问在自绘ClistCtrl的时候,如何给没有数据的行给填充上不同的背景色,类似迅雷一样!请高手指教!
...全文
70 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
wangqiu111 2011-01-20
  • 打赏
  • 举报
回复
这样弄的话,看样子是可以的哦!..谢谢了!我先测试下!
Eleven 2011-01-20
  • 打赏
  • 举报
回复
山寨一点,都有数据,只不过后面的行上显示不出来数据(比如显示空格。。。)
covsno 2011-01-20
  • 打赏
  • 举报
回复
本来是给另外一个问题的回答,结果鸟楼主说不是这个效果,还骗我说图片在他博客上,结果去看了也没图片
鄙视一下


void CMyListBox::OnPaint()
{
CPaintDC dc(this); // device context for painting
CRect rect;
GetClientRect(rect);
CDC MemDC;
CBitmap MemMap;

MemDC.CreateCompatibleDC(&dc);
MemMap.CreateCompatibleBitmap(
&dc,
rect.Width(),
rect.Height());
MemDC.SelectObject(&MemMap);

int Height = rect.Height();
int ItemHeight=16;
if(GetCount()>0)
ItemHeight=GetItemHeight(0);
int nCount=Height/ItemHeight;
if(Height%ItemHeight!=0)
nCount+=1;
CRect rectItem;
rectItem.left=rect.left;
rectItem.right=rect.right;
int nb=GetTopIndex();
for (int i = 0; i < nCount;i++)
{
rectItem.top=i*ItemHeight;
rectItem.bottom=rectItem.top+ItemHeight;
if((i+nb)%2==0)
MemDC.FillSolidRect(rectItem,RGB(0,205,254));
else
MemDC.FillSolidRect(rectItem,RGB(50,50,254));
}
DefWindowProc(WM_PAINT,(WPARAM)MemDC.m_hDC,(LPARAM)0);
dc.BitBlt(0,
0,
rect.Width(),
rect.Height(),
&MemDC,
0,
0,
SRCCOPY);
MemDC.DeleteDC();
MemMap.DeleteObject();
}
wangqiu111 2011-01-20
  • 打赏
  • 举报
回复
应该是对没有数据的行没有产生作用!有数据的行的 这个自绘很容易做到!
wangqiu111 2011-01-20
  • 打赏
  • 举报
回复
这个设置背景色是很简单的!但是在在自绘没有数据的行的时候,出现不同的背景,你提到的这个还是做不到的!
zyrr159487 2011-01-20
  • 打赏
  • 举报
回复
http://www.codeguru.com/Cpp/controls/listbox/colorlistboxes/article.php/c4757/
这个应该可以吧

16,550

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Creator Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧