MFC 更改 CListCtrl 背景颜色

MFC change CListCtrl background color

本文关键字:颜色 背景 CListCtrl 更改 MFC      更新时间:2023-10-16

我正在尝试开发一个MFC应用程序。我有一个CListCtrl对象,我想完全更改它的背景颜色。我试图让它进入HBRUSH OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)事件。但不会针对CListCtrl对象触发此事件。那么我该怎么做呢?

您可以使用CListCtrl::SetBkColor。

对于列表视图,您还可以使用所有者绘制 (DrawItem( 或自定义绘制。

自定义绘制是更好地控制背景的最简单方法。仅设置颜色非常简单。

在 CodeGuru 中,您可以找到一个很好的类和描述,可以简化自定义绘制的使用。 第一部分,第二部分

根据 MSDN 文档,您可以调用CListCtrl::SetBkColor方法来设置CListCtrl的背景色。

对于更精细的控制,您可能需要阅读此 CodeProject 文章,该文章演示如何使用 listview 控件的自定义绘制功能绘制具有替代颜色的行。

您可以在所有者中设置属性 为任何控件属性的背景颜色绘制真在此处输入图像说明 然后使用 OnCtlColor 方法或使用 setBkColor(RGB(...((;它将工作..