阅读背景:

CListCtrl 列表选中项非焦点时也是藍色

来源:互联网 
注意 要去掉Show Selection Always选项。


//列表选中项非焦点时也是藍色
void CZZHCCEditorDlg::OnRclickList3(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
	
	*pResult = 0;	
	
	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 )
	{
		*pResult = CDRF_NOTIFYSUBITEMDRAW;
	}
	else if ( (CDDS_ITEMPREPAINT | CDDS_SUBITEM) == pLVCD->nmcd.dwDrawStage )
	{
		int nItem = static_cast<int>( pLVCD->nmcd.dwItemSpec );
		
		if (m_ccFileTable.GetItemState(nItem, LVIS_SELECTED) == LVIS_SELECTED)
		{//列表选中项非焦点



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: