![]() |
Wie kann ich eine ListView sortieren
Hi,
viele fragen sich bestimmt wie man ene ListView überhaupt sortiert.
Delphi-Quellcode:
Hier erstmal die Sortier-Prozeduren:
procedure ListViewsColumnClick(Sender: TObject;
Column: TListColumn); procedure ListViewsCompare(Sender: TObject; Item1, Item2: TListItem; Data: Integer; var Compare: Integer); private { Private declarations } ColumnToSort: Integer; public { Public declarations } end; implementation {$R *.dfm}
Delphi-Quellcode:
Aufgerufen wird damit:
procedure TForm1.ListViewsColumnClick(Sender: TObject;
Column: TListColumn); begin ColumnToSort := Column.Index; (Sender as TCustomListView).AlphaSort; end; procedure TForm1.ListViewsCompare(Sender: TObject; Item1, Item2: TListItem; Data: Integer; var Compare: Integer); var i:integer; begin if ColumnToSort = 0 then Compare := CompareText(Item1.Caption, Item2.Caption) else begin i := ColumnToSort -1; Compare := CompareText(Item1.SubItems[i], Item2.SubItems[i]); end; end;
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin ColumnToSort := 0; //hier also der Index der Spalte, nach der Sortiert werden soll ListView1.AlphaSort; end; |
Re: Wie kann ich eine ListView sortieren
Der User alcaeus hat die Methode ein wenig verfeinert, damit auch auf- bzw. absteigend sortiert werden kann:
![]() |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:49 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 by Thomas Breitkreuz