![]() |
ListView: Itemabstände festlegen
Hi,
könnte man mit Hilfe von OwnerDraw die Abstände der Einträge einer ListView, in der Ansicht vsIcon, zueinander selbst setzen ? Wie, falls ja ? |
Re: ListView: Itemabstände festlegen
Hallo Nils,
natürlich kannst du dich freiwillig auf einen kleineren Teil des Item-Rect beschränken, aber grundsätzlich sind die Angaben zum Icon-Spacing Parameter der Shell (SystemParametersInfo), die der Benutzer deines Programmes steuert. Freundliche Grüße |
Re: ListView: Itemabstände festlegen
Und kann man das Rect auch verkleinern, wenn man im virtuellen Modus arbeitet ? Dort gibt es in OnData an der markierten Stelle immer eine Zugriffsverletzung, obwohl das Array befüllt ist. Es scheint so, als würde erst OnData, dann OnCustomDrawItem und zum Schluss noch einmal OnData aufgerufen werden.
Delphi-Quellcode:
// OnwerData=True
// OwnerDraw=False <-- Fehler in Delphi, OwnerDraw darf nicht True sein. procedure TRazFileManager.LVData(Sender: TObject; Item: TListItem); begin with Item do begin Caption := DirsFiles[Index].Name; // AV SubItems.Add(DirsFiles[Index].Typ); if Pfad = 'root' then SubItems.Add(DirsFiles[Index].Pfad); ImageIndex := DirsFiles[Index].ImageIndex; end; end; procedure TRazFileManager.LVCustomDrawItem(Sender: TCustomListView; Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean); begin Sender.Canvas.Font.Color := clRed; end; |
Re: ListView: Itemabstände festlegen
Zitat:
Da hier gerade was von Icon-Spacing geschrieben wurde, hast du es schon mit
Delphi-Quellcode:
versucht?
CommCtrl.ListView_SetIconSpacing(listview1.Handle, 30, 0);
|
Re: ListView: Itemabstände festlegen
Das ist genau das was ich suche. Danke! :) Allerdings wäre es noch brauchbar, dennoch das Problem mit OwnerDraw hinzubekommen, damit ich damit auch noch später was mit Lazarus anfangen kann.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:03 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-2025 by Thomas Breitkreuz