RT,但不是选中Always Show Selection 就是了,我想让他一直保存蓝色的选中,不是灰色的。要重绘的,能不能给代码的,谢谢!!

解决方案 »

  1.   

    void CTreectrlDlg::OnCustDrawTree(NMHDR *pNMHDR,LRESULT *pResult)
    {
    // TODO: Add your message handler code here and/or call default
    LPNMTVCUSTOMDRAW pDraw=(LPNMTVCUSTOMDRAW)pNMHDR;
    DWORD dwDrawStage=pDraw->nmcd.dwDrawStage;
    UINT  uItemState =pDraw->nmcd.uItemState;
    *pResult=CDRF_NOTIFYITEMDRAW;
    //
    if((dwDrawStage & CDDS_ITEM) && (uItemState & CDIS_SELECTED))
    {  
    HTREEITEM hItem=(HTREEITEM) pDraw->nmcd.dwItemSpec;
    CDC* pdc=CDC::FromHandle(pDraw->nmcd.hdc);
    pdc->SetBkColor(clr);
    *pResult |= CDRF_SKIPDEFAULT;
    }
    }
    //"Show selction always" 
      

  2.   

    pdc->SetBkColor(clr);
    这里的clr在哪定义的呀?