ListView TopItem festlegen
Hallo Leute, ich verzweifel gerade... :wall:
Ich möchte das erste angezeigte Element einer ListView (vsReport) steuern. Dazu setze ich - wie in der Hilfe beschrieben - das TopItem:
Delphi-Quellcode:
... und bekomme die Meldung:
LvIrgendwas.TopItem := LvKunden.Items[ScrollPos]
Delphi-Quellcode:
Originaltext aus der Online-Hilfe:
[Fehler] E2129 Einer Nur-Lesen Eigenschaft kann kein Wert zugewiesen werden
Zitat:
|
Re: ListView TopItem festlegen
Moin,
ich würde mal pauschal behaupten, dass der Compiler da durchaus recht hat. Aus der ComCtrls-Unit der paasende Eintrag zu ListView:
Delphi-Quellcode:
Da gibts keinen setter, also ist das Dingen wohl tatsächlich nur lesend.
property TopItem: TListItem read GetTopItem;
Hilft dir vielleicht nicht, aber dann zweifelst du wenigstens nicht an dir selbst. ;) Bis denn Bommel |
Re: ListView TopItem festlegen
Hallo
Eine Google Suche hat folgende Funktion hervor gebracht:
Delphi-Quellcode:
procedure ListViewSetTopItem(ListView: TListView; ItemIndex: Integer);
var Difference, ItemHeight: Integer; begin if not (ListView.ViewStyle = vsReport) then Exit; if (ItemIndex < 0) or (ListView.Items.Count = 0) or (ItemIndex > ListView.Items.Count - 1) then raise EInvalidOperation.CreateFmt(SPropertyOutOfRange, ['TopItem']); with ListView do begin Difference := TopItem.Index - Items.Item[ItemIndex].Index; with Items.Item[0].DisplayRect(drBounds) do ItemHeight := Top - Bottom; Scroll(0, Difference * ItemHeight); end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:04 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz