读书人

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

发布时间: 2014-04-28 18:41:49 作者: rapoo

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

读书人网 >VC/MFC

热点推荐