![]() |
LIstview Eintrag aber nicht Icon markieren
In einem Listview wird beim Markieren der jeweilige Eintrag eingefärbt (zum Beispiel blauer Hintergrund mit weißer Schrift). Hat dieser Eintrag nun ein Icon, so wird das Icon ebenfalls eingefärbt. Aber auch nicht immer! Manche Icons werden eingefärbt, andere nicht. :gruebel:
Ich will nun dass nur die eigentlichen Einträge (also der Text) gefärbt wird und die Icons sollen NICHT gefärbt werden. Ich habe nun selbst etliches ausprobiert, von den Einstellungen des ImageList bishin zum Einrichten einer eigenen Spalte nur für die Icons. Hierbei soll jedoch auch beim Klicken auf das Icon der (Text-) Eintrag markiert werden. In der DP habe ich nun gesucht unter dem Stichwort "Listview". Es wurden 1.312 Thread aufgezeigt, wovon ich 1.313 :wink: durchgelesen habe. Lediglich bei der Eingrenzung mit "Icon" war ein 'halber' Treffer dabei: ![]() Wie kann ich also erreichen, dass beim Markieren eines Listview-Eintrags nur der Text und nicht das Icon gefärbt wird? Guido. |
Re: LIstview Eintrag aber nicht Icon markieren
hi...
hast du ein gewisses Muster erkannt, wann das Icon markiert wird und wann nicht?? Am besten stellst du gleich ma das ganze Projekt hoch, dann kann ich ja mal (in ner freien Minute) einen Blick drauf werfen?! falls es nicht zu gross ist... Gruss enemyleft |
Re: LIstview Eintrag aber nicht Icon markieren
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo enemyleft.
Ich dachte schon, es würden garkeine Antworten mehr kommen. :wink: Oder dass dieses Problem zu popelig ist!? :stupid: Doch nun im Ernst: Zitat:
Zitat:
Viel Erfolg beim Testen und Finden einer Lösung! Guido. |
Re: LIstview Eintrag aber nicht Icon markieren
Liste der Anhänge anzeigen (Anzahl: 1)
Guten Morgen
Also ich entwickle mit BDS2006 und habe das mal so kompiliert wie ichs erhalten habe! Ich habe die Ausführbare Datei mal hochgestellt... Also ich sehe bei mir kein Problem?! :gruebel: Einzig bei Item 1 (unter Item von Item 0) ist kein Icon dran. Schau dir doch bitte mal meine Exe an, ist da das Problem auch vorhanden oder nicht? :dance: |
Re: LIstview Eintrag aber nicht Icon markieren
Hallo enemyleft.
Zitat:
Zitat:
Zitat:
Es ist allerdings bei allen Icons so, dass sie mitgefärbt werden. Nur bei einigen sieht man es mehr, bei anderen weniger. Wie zum Beispiel beim Item 1 (also das mit dem "SubItem-Pfeil-Imitat" :wink: ) Guido. |
Re: LIstview Eintrag aber nicht Icon markieren
Zuerst schreibst du:
Zitat:
Zitat:
verwirrt. :freak: Jetzt wäre noch Problem 2, das einzige Problem das du hast oder? Du willst, dass die Icons nicht mitmarkiert werden. Also ich schau mal was ich rauskriege, ich denke aber einfach wird das nicht, weil das so nicht vorgesehen ist. Du müsstes wahrscheinlich, bei einer Markierung den Eintrag ganz selber Zeichnen, Mit allem drum und dran. Also: Icon, Text und Textmarkierung... das kann ja noch heiter werden :stupid: Bis denne |
Re: LIstview Eintrag aber nicht Icon markieren
Also ich habe bis jetzt herumgepröbelt... leider aber nichts brauchbares gefunden.
Ich habs mal so probiert... Aber ehrlich gesagt weiss ich nicht warum das nicht geklappt hat?!
Delphi-Quellcode:
erstens verändert sich aus irgendeinem Grund die Schriftart, dann
procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean); begin DefaultDraw := true; bmp := TBitMap.Create; if cdsSelected in State then begin Imagelist1.GetBitmap(Item.Index,bmp); gr := TGraphic(bmp); ListView1.Canvas.Draw(Item.Position.X,Item.Position.Y,gr); end; end; wird das Gezeichnete wieder überladen und und und... Also ich würde jezt, wenn ich du wäre, eine Neue Komponente erstellen. Direkt ableiten von TListView und die nötigen Proceduren anpassen, respektive overriden! > Anstatt die Idee mit der Komponente, kannst du auch alles selber Zeichnen, ist vielleicht einfacher?! Ich sollte mich jetzt mal hinter meine Arbeit klemmen, sonst hat mein Chef nicht freude... Also schöne Ostern allerseits PS: versuche mal meine Funktion mit DefaultDraw := false, dann siehst du das ich gar nicht soweit von der Lösung entfernt war. (in meinen Gedanken auf jedenfall :stupid: ) |
Re: LIstview Eintrag aber nicht Icon markieren
Hallo enemyleft.
Zitat:
Zitat:
Aber mal im Ernst! Vielen Dank für deine Bemühungen. Deine obige Funktion habe ich getestet. Ist halt noch nicht "ausgereift". Investier nicht zu viel Zeit dafür, sonst ist dein Chef vielleicht wirklich irgendwann sauer. :dancer2: Viele Grüße, Guido. |
Re: LIstview Eintrag aber nicht Icon markieren
Hallo, könnte das ganz/teilweise einfärben mit der Transparenz zusammenhängen? Nur so n Querschuss, ohne den Thread aufmerksam gelesen zu haben ;-)
|
Re: LIstview Eintrag aber nicht Icon markieren
Liste der Anhänge anzeigen (Anzahl: 1)
Moin
@Guido Dein Code habe ich jetzt ein "bisschen" umgeschrieben, das Icon wird jetzt nicht mehr mitmarkiert. EDIT: Der Code wurde nochmal ein bisschen überarbeitet. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:49 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz