Unterschiedliche Textfarben innerhalb einer ListView

  • Hallo AutoIt Community.

    Ich möchte, wie im Titel beschrieben, einzelne ListViewElemente erstellen/einfärben, deren Spalten (in horizontaler Sicht) unterschiedliche Farben aufweisen. Ich brauch dies um bestimmte Inhalte von Anderen abzusetzen (aus grauen würde auch genügen).
    Die Tabelle/Liste erstelle ich über den Befehl GUICtrlCreateListView. Zwar kann man mit GUICtrlSetColor den Text einfärben, dies wirkt dann aber großflächig auf das ganze Objekt.
    Konnte auf den Foren und in der AutoIT Help nichts brauchbares finden, hoffe ihr könnt mir weiter helfen.

  • Hi Bert,

    vielen Dank für die schnelle Antwort.
    Leider ist das Beschriebene nicht ganz das, was ich suche. So wie ich das sehe, kann man mit deinem Skript nur die Hintergrundfarbe ändern, oder irre ich mich da?
    Mit geht es darum, wie zb. mit dem Befehl GUICtrlSetColor, die Textfarbe zu ändern und das für einzelne Elemente der ViewList.


    Mfg TheUnkowingDude

  • Hi Bert,

    vielen Dank für die schnelle Antwort.
    Leider ist das Beschriebene nicht ganz das, was ich suche. So wie ich das sehe, kann man mit deinem Skript nur die Hintergrundfarbe ändern, oder irre ich mich da?

    mit Erweiterung des Skriptes ist auch das ändern der Textfarbe möglich:
    62_Listview Farbig.jpg

    Spoiler anzeigen

    und die dazugehörige Ini:


    die Spalteneinfärbung überschreibt die Zeileneinfärbung. Die Items kannst du auch mit GuiCtrlCreateListviewItem anlegen,

    Wenn du es noch individueller benötigst solltest du dir ListView - SubItem einzeln färben/formatieren, Finale Version! (v1.3) anschauen. Aus dieser UDF habe ich die für obigen Zweck benötigten Funktionen kopiert. Im Original ist natürlich noch viel mehr machbar.

    mfg (auto)Bert

    Einmal editiert, zuletzt von autoBert (9. Mai 2016 um 13:19)

  • Ich habe das Skript mit Hilfe von Melba23 & Co. weiterentwickelt:

    Spoiler anzeigen


    66_Listview Farbig.jpg
    es lohnt sich im Entwicklerforum vorbeizuschauen, im dortigen Thema sind einige gute Lösungen im Zusammenhang mit LV-Headern verlinkt bzw. direkt gepostet, die Lösung von @UEZ verdient hier besondere Erwähnung

    Einmal editiert, zuletzt von autoBert (12. Mai 2016 um 14:05)