【发布时间】:2013-10-30 12:38:29
【问题描述】:
我想将特定列的背景颜色更改为对话框的颜色(灰色)。我怎样才能实现它?
void CUcsOpTerminalDlg::OnCustomdrawFeatureList(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMCUSTOMDRAW pNMCD = reinterpret_cast<LPNMCUSTOMDRAW>(pNMHDR);
// TODO: change color
*pResult = 0;
}
谢谢
【问题讨论】:
-
看看MSDN文章Using Custom Draw
-
另一个链接,有解释、例子等:Neat Stuff to Do in List Controls Using Custom Draw
-
此方法仅绘制添加项目的单元格。我需要为整列着色,例如一列的所有单元格,即使它们是空的
-
@alex555 然后,您必须绘制 CListCtrl 的背景。我认为这是在 OnEraseBkgnd 中完成的。而且你必须弄清楚列的宽度,这样你就可以用你想要的颜色绘制正确的矩形。