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;