ListView简单排序

combobox 不是Sorted:=True; 這樣就可以了嗎??
listview : sorttype :=stText 就會自動排序
menu 排序,可暗中用listbox 排序,再更新menu內容

 

找一下delphi的help "OnColumnClick" 就有example 了

var ColumnToSort: Integer;

procedure TForm1.ListView1ColumnClick(Sender: TObject; Column: TListColumn);
begin
     ColumnToSort := Column.Index;
     (Sender as TCustomListView).AlphaSort;
end;
// 寫 OnCompare 事件
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;
end;


你可能感兴趣的:(ListView)