CListBox Schriftfarbe der einzelnen Zeilen verändern
-
moin
ich hab da ne kleine clistbox
diese hat platz für 10 zeilen ...
es können aber auch mehr dargestellt werden halt über nen scrollbalken...nun möchte ich folgendes:
ich möchte die items die in der listbox dargestellt werden entweder eine grüne schriftfarbe zuweisen oder eine rote ... das soll für jedes element beim rein zeichnen entschieden werden ...so und genau da liegt mein problem ...
ich bekomme es weder hin die schirft anders farbig zu machen geschweige denn auch jedes einzelne item anders zu behandeln ...wie kann ich das machen ? hat da jemand was funktinierendes bzw kann mir weiter helfen ?
mfg LT
-
Die normale ClistBox kann das nicht. Musst Du entweder ne Klasse von CListBox ableiten und dann OnPaint() überladen oder bei CodeGuru oder ähnlichen suchen. Ich meine, dort so was mal gesehen zu haben.
-
entweder du nimmst die Klasse
http://www.codeguru.com/cpp/controls/listbox/colorlistboxes/article.php/c1611/
oder du erstellst dir eine eigene Klasse und überschreibst DrawItem (nicht OnPaint) und Printest den Text so wie du willst selbst. Beispiele gibts es dafür genügend
-
Ich würde ein List View verwenden und Customdraw.
http://www.codeguru.com/cpp/controls/listview/customdrawing/article.php/c4195
http://www.codeguru.com/cpp/controls/listview/customdrawing/article.php/c4199