Forcer OnCompare dans un TListView
Bonjour,
j'ai beau forcer la chose, il va bien dans la procedure ListView1ColumnClick mais il ne veux pas rentrer dans la procedure OnCompare par la suite. Si je clique manuellement il va bien dans OnCompare...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
|
procedure TFicheViewEvents.init;
begin
ListView1ColumnClick(nil, ListView1.Column[1]);
end;
procedure TFicheViewEvents.ListView1ColumnClick(Sender: TObject;
Column: TListColumn);
var
ListItem : TListItem;
i_cpt: Integer;
begin
SortedColumn := Column.Index;
TListView(Sender).CustomSort(nil, Column.Index -1);
end;
function CompareTextAsDateTime(const s1, s2: string): Integer;
begin
Result := CompareDateTime(StrToDateTime(s2), StrToDateTime(s1));
end;
procedure TFicheViewEvents.ListView1Compare(Sender: TObject; Item1,
Item2: TListItem; Data: Integer; var Compare: Integer);
var
i_cpt: Integer;
ListItem: TListItem;
begin
Case SortedColumn Of
0 : Compare := Compare;
1 : Compare := CompareTextAsDateTime(Item1.subitems[SortedColumn - 1], Item2.subitems[SortedColumn - 1]);
End;
end; |