用example改的!
var
Form1: TForm1;
ColumnToSort:integer=0;
SortStyle:Boolean=true;
implementation
{$R *.DFM}
procedure TForm1.ListView1Compare(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;
if SortStyle then
Compare:=-Compare;
end;
procedure TForm1.ListView1ColumnClick(Sender: TObject;
Column: TListColumn);
begin
ColumnToSort := Column.Index;
(Sender as TCustomListView).AlphaSort;
SortStyle:=not SortStyle;
end;