Thema: Delphi Invalidate in ListView

Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#1

Invalidate in ListView

  Alt 27. Feb 2017, 08:38
Im Explorer (ListView) zumindest unter Win7 wird beim drüberfahren der Items mit der Maus ein Rahmen um diese Items gezeichnet.
Das mache ich bei mir in meiner Ownerdraw ListView genauso.

Das Problem dabei ist nur das ich dann nach jedem move auf ein anderes Item das ListView Invalidieren muss damit das zuletzt gezeichnete gelöscht wird.

Wie könnte ich das umgehen so wie im Explorer das ich nicht jedes Mal ein Invalidate aufrufen muss?
Geht schwer auf die CPU und setzt meine Frames dementsprechend runter. (Im Explorer merkt man nichts davon)

Die meisten ListViews Ownerdrawn zeichnen keinen Rahmen um die Items ich glaube genau wegen diesen Problem nur für das ausgewählte selektierte Item.

Irgend jemand eine Lösung dafür?
Wenn nicht werde ich wohl oder übel das zeichnen des Rahmen entfernen müssen.

gruss

Geändert von EWeiss (27. Feb 2017 um 08:43 Uhr)
  Mit Zitat antworten Zitat