Delphi的ListView自动排序

private 
    SortCol: Integer; 
    SortWay: Integer; 
   
   
   
   
   
procedure TForm1.LVweColumnClick(Sender: TObject; Column: TListColumn); 
begin 
   SortCol:=Column.Index; 
  if (SortWay=1) then SortWay:=-1 else SortWay:=1; 
  (Sender as TCustomListView).AlphaSort; 
end; 
procedure TForm1.LVweCompare(Sender: TObject; Item1, Item2: TListItem; 
  Data: Integer; var Compare: Integer); 
var 
  t: Integer; 
begin 
  if (SortCol=0) then 
  begin 
    Compare:=SortWay * CompareText(Item1.Caption,Item2.Caption); 
  end else 
  begin 
    t:=SortCol-1; 
    Compare:=SortWay * CompareText(Item1.SubItems[t],Item2.SubItems[t]); 
  end; 
end;