Einfachste Weg, um zu ändern listview-und treeview-Farben
Frage
Ich bin auf der Suche nach einem einfachen Weg, um zu ändern der Farbe von text und hintergrund in listview
und treeview
Steuerelemente in WTL oder einfache Win32-code.
Ich wirklich nicht wollen, zu haben, um realisieren volle Eigentümer der Zeichnung für diese Kontrollen, ändern Sie einfach die Farben benutzt.
Ich möchte sicherstellen, dass die Bilder sind noch gezogen, mit der richtigen Transparenz.
Irgendwelche Vorschläge?
Lösung
Haben Sie einen Blick auf die folgenden Makros:
Andere Tipps
Dort sind auch die entsprechenden Methoden des CListViewCtrl
und CTreeViewCtrl
wrapper-Klassen:
- GetBkColor
- SetBkColor
Möglicherweise möchten Sie auch einen Blick auf WTL ist CCustomDraw::OnItemPrePaint (das ist, wenn Sie brauchen, um das zeichnen Steuern der einzelnen Elemente)
Ein guter Artikel, der beschreibt diesen Prozess ist hier
Es ist schon eine Weile her, dass ich mit der win32-API direkt, aber ich glaube, dass, wenn Sie mit der WM_ERASEBACKGROUND Nachricht für Ihre Kontrolle, die Sie verwenden können, FillRect() in Ihrem handler zu malen hintergrund mit einer beliebigen Farbe, die Sie mögen.