ok, stringlist wars, sorry
wenn du den Umweg über eine Stringlist nicht gehen willst, nutze indexof
Ich bin auch ziemlich sicher, daß das mit duplicate vor kurzem hier im Forum behandelt wurde, such mal
Quelltext
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:
| procedure TForm1.Button1Click(Sender: TObject); //Item nur hinzufügen, wenn es noch nicht in Liste ist begin if ListBox1.Items.indexof(edit1.text)=-1 then listbox1.items.add(edit1.text); end;
procedure TForm1.Button2Click(Sender: TObject); //alle doppelten Items in der Listbox löschen Var i:integer; S:string; begin with listbox1 do begin i:=items.count-1; //Listbox vom Ende durchgehen while i>=0 do begin s:=items[i]; while items.indexof(s)<>i do begin items.Delete(items.indexof(s)); dec(i); end; dec(i);//nächstes item end; end; end; |
ähh, hau mich nicht, wenn das zweite nicht auf Anhieb klappt, ist mir grad so eingefallen
Mfg Frank