一个函数就可以搞定: void CListCtrlView::OnCustomdrawList( NMHDR *pNMHDR, LRESULT *pResult ) { NMLVCUSTOMDRAW* pLVCD = reinterpret_cast<NMLVCUSTOMDRAW*>( pNMHDR ); *pResult = CDRF_DODEFAULT; if ( CDDS_PREPAINT == pLVCD->nmcd.dwDrawStage ) { *pResult = CDRF_NOTIFYITEMDRAW; } else if ( CDDS_ITEMPREPAINT == pLVCD->nmcd.dwDrawStage ) { //当前选中的item int nItem=(pLVCD->nmcd.dwItemSpec); COLORREF crText,crBk; //若选中 if(m_listCtrl->GetCheck(nItem) == 1) { crText = RGB(0,0,0);//RGB(32,32,255); crBk =RGB(153,204,255); } //若取消选中 else{ crText = RGB(0,0,0); crBk = RGB(240,247,249); } pLVCD->clrText = crText; pLVCD->clrTextBk = crBk; *pResult = CDRF_NEWFONT; } } 只需要改红色部分(文件名),声明一下。
C++-MFC Office风格的界面,ListCtrl点击选中后高亮
猜你喜欢
转载自blog.csdn.net/sheyun1876/article/details/80583517
今日推荐
周排行