Как отсортировать в tlistview
с данными, существующими в subitem[x]
?
Set SortType := stData
и write
procedure TForm1.ListView1Compare(Sender: TObject; Item1, Item2: TListItem;
Data: Integer; var Compare: Integer);
begin
Compare := StrToInt(Item1.SubItems[x]) - StrToInt(Item2.SubItems[x])
end;
например. Если сравнение отрицательное, то элемент 1 должен оказаться перед элементом 2; если сравнение положительное, то наоборот. Таким образом, этот пример, предполагающий, что SubItem[x] содержит целое число, отсортирует элементы в соответствии с числовым значением SubItem[x].
Если же, с другой стороны, SubItem[x] содержит строки, то можно написать
procedure TForm1.ListView1Compare(Sender: TObject; Item1, Item2: TListItem;
Data: Integer; var Compare: Integer);
begin
Compare := AnsiCompareText(Item1.SubItems[x], Item2.SubItems[x]);
end;