ListBox.Sorted, mais inversé. Bah, ça casse pas trois pattes à un canard, mais ça répond à une question posée sur le forum...
Et comme les réponses faites sur le forum semblent peu ou mal consultées, autant que ça profite à tout le monde.
Il me semble qu'il n'y a pas de commentaire particulier à faire, le code est assez évident.
Pour les débutants : l'exécution est protégée dans un bloc try..finally..end, afin d'être sûr que la StrinList créée sera libérée.
Source / Exemple :
procedure ReverseSorted(ListBox: TListBox);
var i: Integer;
ListSorted: TStringList;
begin
ListBox.Sorted := True;
ListSorted := TStringList.Create;
try
ListSorted.Text := ListBox.Items.Text;
ListBox.Sorted := False;
ListBox.Clear;
for i := (ListSorted.Count - 1) downto 0 do
begin
ListBox.Items.Add(ListSorted[i]);
end;
finally
ListSorted.Free;
end;
end;
// Exemple d'utilisation:
procedure TForm1.Button1Click(Sender: TObject);
begin
ReverseSorted(ListBox1);
end;
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.