Bonjour,
j'emets des messages depuis hier concernant les sinppets
comme je n'ai pas de réponse je mets ici les codes que j'ai proposé :
pour
Supprimer les doublons d'un combobox [Delphi 5], j'ai proposé une variante :
Autre méthode en utilisant uniquement le Combobox :
var
i:integer;
begin
for i:= combobox1.Items.Count-1 downto 1 do if ComboBox1.Items.IndexOf(ComboBox1.Items.Strings[i])<i then ComboBox1.Items.Delete(i);
end;
Ainsi on peut garder l'ordre d'origine des items.
Si on veut classer par ordre alphabétique : il suffit de mettre la propriété "Sorted" du Combobox1 à true (ou mettre Combobox1.Sorted:=True)
J'ai mis "downto 1" (et pas "downto 0") car l'item "0" n'a pas besoin d'être traité
Pour les puristes une boucle "try" peut être rajoutée.
Toutefois le code ne coince pas même s'il n'y a aucun item dans le Combobox.
Le même raisonnement peut être utilisé pour l'élimination de doublons dans une liste d'éléments (TStringlist par exemple) en gardant l'ordre d'origine (càd qu'on enlève les "Add" supplémentaires supposés avoir été rajoutés ultérieurement)Pour
1ère lettre en Majuscule ( PropertCase ( PCase ) ) [Delphi 5] j'avais proposé 2 solutions :
function UpperFirstChar (s:string):string;
begin
if s<> '' then s[1]:=AnsiUpperCase(s[1])[1];
result:=s;
end;
function UpperFirstChar (s:string):string;
begin
if s<>'' then CharUpperBuff(@s[1],1);
result:=s;
end;
voilà,
DrJerome