我正在尝试找到一种简单的方法来更改文本和背景的颜色 listviewtreeview WTL 或纯 Win32 代码中的控件。

我真的不想为这些控件实现完整的所有者绘图,只需更改使用的颜色即可。

我想确保图像仍然以适当的透明度绘制。

有什么建议么?

有帮助吗?

其他提示

也有相应的方法 CListViewCtrlCTreeViewCtrl 包装类:

  • 获取背景颜色
  • 设置背景颜色

您可能还想看看 WTL 的 CCustomDraw::OnItemPrePaint (如果您需要控制单个项目的绘制)

描述这个过程的一篇好文章是 这里

我已经有一段时间没有直接使用 win32 API 了,但我相信,如果您为控件处理 WM_ERASEBACKGROUND 消息,则可以在处理程序中使用 FillRect() 来使用您喜欢的任何颜色绘制背景。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top