Einzelnen Beitrag anzeigen

dopeline

Registriert seit: 7. Mär 2003
Ort: Berlin
304 Beiträge
 
Delphi 7 Enterprise
 
#1

Items zweier ListBoxen vergleichen -> doppelte Items lösc

  Alt 5. Jul 2004, 17:11
Hallo!

Ich habe 2 ListBoxen ich möchte in eine Suchroutine doppelte Einträge löschen: Wenn in ListBox1 ein Eintrag aus ListBox2 gefunden wird, soll er in ListBox1 gelöscht werden. Ich habe mir das so überlegt, aber es funktionier nicht (Listenindex überschreitet das Maximum):
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i,r:integer;
begin
 for i:=0 to ListBox2.Items.Count-1 do
  for r:=0 to ListBox1.Items.Count-1 do
   if ListBox2.Items.Strings[i]=ListBox1.Items.Strings[r] then
    ListBox1.Items.Delete(r);
end;
Vielleicht sollte ich dazusagen, dass in der ListBox2 weniger Einträge stehen, als in der ListBox1.

Hier ein Beispiel:

In der ListBox1 stehen 400 Einträge (Items)
In der ListBox2 stehen nur 100 Einträge
Alle Einträge aus der ListBox2, die auch in der ListBox1 vorhanden sind, sollen in der ListBox1 gelöscht werden.

Hat jemand einen Lösungsvorschlag?


Gruß, dopeline
  Mit Zitat antworten Zitat