Einzelnen Beitrag anzeigen

Guido Eisenbeis

Registriert seit: 9. Apr 2006
389 Beiträge
 
Delphi 10.3 Rio
 
#17

Re: LIstview Eintrag aber nicht Icon markieren

  Alt 9. Apr 2007, 20:29
Hallo bitsetter.

So, es ostert sehr! Deshalb hat meine Antwort auch ein bisschen gedauert.

Deinen obigen Code habe ich mir angesehen. Leider kann ich irgendwie nicht nachvollziehen, was das ListView anstellt, wenn man im ReportMode mit LargeImages arbeitet. Ich dachte, die hätten dann keine Auswirkung. Das ListView ist ein komisches Ding!

Das tut der Sache jedoch keinen Abbruch, dass dein Code funktioniert. Dafür meinen Dank!

Ich habe parallel dazu einen Code entwickelt, der eine andere mystische Kraft des ListViews nutzt. Ich stelle die Schriftgröße des ListViews zum Beispiel auf 14, fügt dann die ListItems hinzu und stelle hinterher die Schriftgröße wieder kleiner, zum Beispiel auf 8. Funktioniert nur beim Erstellen des ListViews und bei OwnerDraw:= true.

Nun behält das ListView die größere Zeilenhöhe bei, auch wenn zur Laufzeit weitere ListItems hinzugefügt werden. Die Zeichen-Routine im DrawItem-Event habe ich komplett überarbeitet. Sie funktioniert nun wirklich gut! Um das Zeichnen flackerfrei durchzuführen, benutze ich ein unsichtbares Bitmap. In diesem Bitmap werden zunächst die einzelnen Zeichenaktionen durchgeführt und danach in einem Rutsch ins ListView übertragen.

Wenn du willst schau's dir mal an. Wie gehabt: Über Verbesserungsvorschläge freue ich mich!

Gruß,
Guido.

PS: Da das Problem mit der Zeilenhöhe ein anderes ist, als das ursprüngliche dieses Topics, werde ich jetzt erstmal recherchieren und falls dann noch nötig, einen Thread zum Thema ListView-Zeilenhöhe öffnen.
Angehängte Dateien
Dateityp: zip icon_nicht_mitmarkieren__demo__7_155.zip (6,6 KB, 19x aufgerufen)
  Mit Zitat antworten Zitat