Самый простой способ изменить цвета списка и дерева - PullRequest
5 голосов
/ 05 сентября 2008

Я пытаюсь найти простой способ изменить цвет текста и фона в listview и treeview элементах управления в WTL или обычном коде Win32.

Я действительно не хочу реализовывать рисунок полного владельца для этих элементов управления, просто измените используемые цвета.

Я хочу убедиться, что изображения по-прежнему отображаются с надлежащей прозрачностью.

Есть предложения?

Ответы [ 4 ]

3 голосов
/ 05 сентября 2008
2 голосов
/ 08 сентября 2008

Вы также можете взглянуть на CCustomDraw :: OnItemPrePaint WTL (это если вам нужно контролировать рисование отдельных элементов)

Хорошая статья, описывающая этот процесс: здесь

2 голосов
/ 08 сентября 2008

Существуют также соответствующие методы классов-оболочек CListViewCtrl и CTreeViewCtrl:

  • GetBkColor
  • SetBkColor
0 голосов
/ 05 сентября 2008

Уже давно я использую Win32 API напрямую, но я считаю, что если вы обрабатываете сообщение WM_ERASEBACKGROUND для своего элемента управления, вы можете использовать FillRect () в своем обработчике для рисования фона любым цветом, который вам нравится.

...