Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Schriftfarbe einzelner Combobox-Items
Dragonhunter - Di 20.07.04 14:28
Titel: Schriftfarbe einzelner Combobox-Items
Wie kann ich jedem einzelnen ComboBox-Item eine andere Schriftfarbe geben?
z.B. Item[0]=clRed; Item[1]=clBlue; ...
Habe hierzu weder in der Delphi-Hilfe noch im Forum etwas gefunden(Hoffe ich hab auch gründlich gesucht :? ).
Die gleiche Frage wurde hier im Forum schonmal gestellt, aber leider nicht beantwortet.
Im Voraus vielen Dank
maxk - Di 20.07.04 14:39
Das geht nur, wenn du die Eintrag selber zeichnest. Stichwort OwnerDraw! Ich kriege den Code jetzt nicht hin, da ich gerade kein Delphi zur Hand habe. Wenn ich nachher Zeit finde, poste ich dir ein bisschen Code.
general_north - Di 20.07.04 14:58
Hallo,
nur ein Beispiel hierzu:
combobox auf "csOwnerDrawVariable" stellen und auf dem Ereigniss-Sheet das "OnDrawItem" doppelklicken.
Dann folgendes einfüllen:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12:
| With ComboBox1.Canvas.Font Do Begin Case Index Of 0: Color := clGray ; 1: Color := clAqua ; 2: Color := clBlue ; 3: Color := clRed ; Else Color := clblack ; End ; End ; ComboBox1.Canvas.TextRect( Rect, Rect.Left + 10, Rect.Top + 2, ComboBox1.Items[ Index ] ); |
gehe hierbei davon aus das deine combobox "ComboBox1" heißt. Solltest vor dem testen ein paar items reintun ...
ABER, es ändert sich nun einiges due musst z.B. darauf achten dass deine Einträge in den richtigen Farben selektierte werden!
Viel spass ....
Dragonhunter - Di 20.07.04 16:58
Danke!
Genau so hatte ich mir das vorgestellt. :lol:
| Zitat: |
| ABER, es ändert sich nun einiges due musst z.B. darauf achten dass deine Einträge in den richtigen Farben selektierte werden! |
Das verstehe ich leider nicht! :oops:
Was mich jetzt noch so ein bißchen stört, ist, daß man bei einer unpassenden Markierungsfarbe , die darunterliegende Schrift nicht mehr lesen kann. (@general_north : oder meintest Du das)
Da gibt es doch bestimmt eine Möglichkeit, die Schriftfarbe des markierten Items auf z.B. clWhite zu setzen. Werd ich mal schauen.
Bis denn
Dragonhunter
Wie kann ich eigentlich ein Bild, das sich auf meiner Festplatte befindet, hier in meine Antwort einfügen? "http://URL_des_Bildes" im Antwort-Editor hab ich nicht so ganz verstanden bzw wollte nicht funktionieren.
maxk - Di 20.07.04 17:18
Leider gar nicht. Du kannst das Bild nur einfügen, wenn es auf einem Server liegt. Als erst hochladen...
Ich glaube general_north meinte, dass jetzt wo du das Zeichnen übernimmst. Evtl. einige Sachen nicht mehr so aussehen wie früher. Bei einer ComboBox ist das jedoch nicht so vieles. Wenn dir was am Aussehen jetzt nicht mehr gefällt, bist du selbst dafür verantwortlich.
Dragonhunter - Mi 21.07.04 12:24
Mein Problem hat sich mittlerweile erledigt.
Ich wollte eigentlich in einer ComboBox mehrere Gruppen darstellen und diese dann farblich von einander abgrenzen.
Hab mich aber jetzt entschieden, mehrere ComboBoxen zu benutzen, die je nach ausgewähltem (Gruppen-)RadioButton aktiv/inaktiv sind.
Vermutlich hätte mein Programm, so wie ich es vorhatte, als ich diese Frage stellte, sowieso nicht funktioniert. :nut:
Egal. Eure Hinweise werd ich sicher später mal gebrauchen können.
Nochmal Danke! :wave:
Dragonhunter
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!