Hi,
ich habe eine TListView mit den Methoden OnCompare und OnColumnClick um die Liste zu sortieren. Das funktioniert ja auch, aber wenn ich die bestehende Liste sortiere und dann irgendwann einen neuen Eintrag hinzufüge, erhalte ich folgenden Fehler:
Im Projekt ist eine Exception der Klasse EStringListError aufgetreten. Meldung: 'Listenindex überschreitet das Maximum (1)'. Prozess wurde angehalten.Mit einzelne Anweisung oder Start fortsetzen
Er versucht nach dem Hinzufügen gleich die Liste neu zu sortieren, aber dann tritt der Fehler auf.
Ich weiß echt nicht mehr was ich ändern soll, hoffe es kann mir jemand helfen!
Danke
Delphi-Quellcode:
procedure Tframe_geburtstag.GeburtstageColumnClick(Sender: TObject;
Column: TListColumn);
begin
ColumnToSort := Column.Index;
(Sender as TCustomListView).AlphaSort;
end;
Delphi-Quellcode:
procedure Tframe_geburtstag.GeburtstageCompare(Sender: TObject; Item1,
Item2: TListItem; Data: Integer; var Compare: Integer);
var
ix: Integer;
begin
if ColumnToSort = 0 then
Compare := CompareText(Item1.Caption,Item2.Caption)
else begin
ix := ColumnToSort - 1;
Compare := CompareText(Item1.SubItems[ix],Item2.SubItems[ix]);
end;
Auf Button Klick in der ListView einen Eintrag hinzufügen:
Delphi-Quellcode:
Item := Geburtstage.Items.Add;
Item.Caption := '' + '11.11.2001'; //Datum
Item.SubItems.Add('typ'); //Typ
Item.SubItems.Add(Edt_Nachname.Text);