Einzelnen Beitrag anzeigen

franz

Registriert seit: 23. Dez 2003
Ort: Bad Waldsee
112 Beiträge
 
Delphi 5 Professional
 
#1

TListView zeichnet wild auf dem Bildschirm

  Alt 16. Okt 2005, 00:44
Hi,

ich weiß, dass es so eine ähnliche Frage schon einmal gab, habe das Thema aber leider nicht mehr gefunden.

Ich möchte in einer ListView Vorschaublider anzeigen. Dabei sollen aber nur die Bilder gezeichnet werden, die gerade benötigt werden. Dazu habe ich folgendes geschrieben:

Delphi-Quellcode:
procedure TfrmMain.ListViewFilesCustomDrawItem(Sender: TCustomListView;
  Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
  if (FImgLoadKind <> imkLoadCustom) or (not Assigned(Item)) then
     Exit;

  if Item.ImageIndex = -1 then
     CreatePreviewImage(Item.SubItems[1], nil, Item.Index);
end;
CreatePreviewImage() zeichnet das Bild, legt es in einer ImageList ab und ordnet es zu.


Allerdings zeichnet Windows wild auf dem Bildschirm. (Siehe Attachement). Ich habe schon so viel versucht und komme einfach nicht auf die Lösung. Was mache ich nur falsch?
Miniaturansicht angehängter Grafiken
listviewproblem_176.gif  
  Mit Zitat antworten Zitat