ListView Textfarbe mit API festlegen

07/01/2010 - 12:37 von Markus Weber \(Megalith GmbH\) | Report spam
Hallo!

Ich möchte die Textfarbe einer Zeile eines Listviews z.B. in rot haben. Wie
stelle ich das per API Funktion an?

Ich kann nicht die eingebaute ForeColor-Eigenschaft verwenden, da ich den
Listview über CallBack-Funktionen sortiere. Damit stimmt die interne
ListView Collection-Reihenfolge und die angezeigten Reihenfolge der
Elemente nicht mehr überein.

Viele Grüße und Dank im voraus!
Markus Weber
 

Lesen sie die antworten

#1 Timo Kunze
07/01/2010 - 18:28 | Warnen spam
Markus Weber (Megalith GmbH) schrieb:
Ich möchte die Textfarbe einer Zeile eines Listviews z.B. in rot haben.
Wie stelle ich das per API Funktion an?


Dazu musst du CustomDraw verwenden, d. h. du musst dem ListView sagen,
dass du vor dem Zeichnen jedes Items benachrichtigt werden willst. Bei
dieser Benachrichtigung hast du dann die Möglichkeit, die Textfarbe für
den jeweiligen Item anzupassen.
Das geht alles über die Nachricht WM_NOTIFY, d. h. du musst das
Elternfenster des ListViews subclassen (oder das ListView selbst, dann
heißt die Nachricht aber OCM_NOTIFY).

Timo
www.TimoSoft-Software.de - Unicode controls for VB6
"Those who sacrifice freedom for safety deserve neither."
"Demokratie ist per Definition unsicher. Ihr Schutz entsteht aus der
Überzeugung, dass die demokratischen Kràfte überwiegen und sich – auf
demokratischem Wege – durchsetzen."

Ähnliche fragen