[ListView] Doublons ListView
Bonjour,
J'essaie de supprimer les doublons d'une listview en essayant de m'insipirer du code à l'adresse: ici
Je n'y arrive pas.En fait je concatène tous mes élmnts d'une ligne de ma listview.Mais j'ai l'impression qu'il ne me supprime pas ce que je veux.
Quelqu'un peut-il m'aider ou a-t-il un bout de code.
Ci-dessous mon code :
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
| procedure TForm1.SuppDoublonsListView1;
var i,iEncours:integer;
str : String;
strlist:TStringList;f : TextFile;
begin
i := 0;
strlist := TStringList.Create;//Assignfile(f,'C:\titi.txt');Rewrite(f);
while i <= ListView1.Items.Count -1 do
begin
str := uppernoaccent(ListView1.Items.Item[i].Caption+ListView1.Items.Item[i].SubItems.Strings[0]+ListView1.Items.Item[i].SubItems.Strings[1]+ListView1.Items.Item[i].SubItems.Strings[2]+ListView1.Items.Item[i].SubItems.Strings[3]+ListView1.Items.Item[i].SubItems.Strings[4]);
strlist.Add(str);
//write(f,inttostr(i)+' '+str+#13);
i := i+1;
end;
iEncours := strlist.Count -1;
while iEncours >= 0 do
begin
while strlist.IndexOf(strlist.Strings[iEncours]) <> iEncours do
begin
ListView1.Items.Delete(strlist.IndexOf(strlist.Strings[iEncours]));
dec(iEncours);
end;
dec(iEncours);
end;
strlist.Free;//CloseFile(f);
end; |