首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

VC MFC中怎么改变列表框某一行的背景色

2014-04-28 
VC MFC中如何改变列表框某一行的背景色我想让列表框(IDC_LIST,查看时报告模式)的某一行的背景色改为红色,

VC MFC中如何改变列表框某一行的背景色
  我想让列表框(IDC_LIST,查看时报告模式)的某一行的背景色改为红色,从而让其突出显示出来.求教怎么弄
[解决办法]
从CListBox派生一个类, 并重写:
void CMyListBox::DrawItem(LPDRAWITEMSTRUCT pDIS)
{
//初始化画笔, 画刷等信息, 代码省略

::FillRect(pDIS->hdc,&pDIS->rcItem);
CString strVal;
GetText(strVal);
::DrawText(pDIS->hdc,strVal,strVal.GetLength(),&pDIS->rcItem,DT_LEFT 
[解决办法]
 DT_VCENTER 
[解决办法]
 DT_SINGLELINE);
}

在你的对话框类中用CMyListBox绑定某个CListBox控件, 或者直接:
CMyListBox* m_pLB;
m_pLB=new CMyListBox();
m_pLB->Create(...);
[解决办法]

引用:
http://www.codeproject.com/KB/combobox/xlistbox.aspx
参看一下这个

Sorry,看错了,lz说的是CListCtrl(report),不是CListBox,自绘处理DrawItem
[解决办法]
可以参考一下,这个http://www.codeproject.com/KB/list/selectentirerow.aspx

热点排行