AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Frage Listbox doppelte Eintraege loeschen.
Thema durchsuchen
Ansicht
Themen-Optionen

Frage Listbox doppelte Eintraege loeschen.

Ein Thema von lucius · begonnen am 11. Okt 2005 · letzter Beitrag vom 11. Okt 2005
Antwort Antwort
lucius

Registriert seit: 6. Okt 2005
Ort: Niederlande
215 Beiträge
 
Delphi 7 Enterprise
 
#1

Frage Listbox doppelte Eintraege loeschen.

  Alt 11. Okt 2005, 13:38
Nochmals hallo zusammen, ich moechte doppelte Eintraege in einer Listbox loeschen, das geht mit einer Schleife.
Aber die Schleife muss vom Anfang bis Ende der Listbox laufen, ich hab da schon was Code aber der faengt am Ende an und loescht nur 1 doppelter Eintrag obwohl es mehrere gibt.
Delphi-Quellcode:
procedure TMainForm.Button2Click(Sender: TObject);
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;
Zitat:
Beilspiel:

Affe6
Affe5
Affe4
Affe5 <--- muestte weg
Affe3
Affe4 <--- muesste weg
Affe6 <--- muestte weg
Kann man so etwas realisieren ?
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Frage Listbox doppelte Eintraege loeschen.

  Alt 11. Okt 2005, 13:40
Moin, also bitte Hier im Forum suchenListbox doppelte Einträge löschen
  Mit Zitat antworten Zitat
lucius

Registriert seit: 6. Okt 2005
Ort: Niederlande
215 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Frage Listbox doppelte Eintraege loeschen.

  Alt 11. Okt 2005, 13:47
Hi Matze die codes funktionieren nicht richtig, es wird nur der 1e doppelte Eintrag von unten geloescht .
Zitat:
Beilspiel:

Affe6
Affe5
Affe4
Affe5 <--- muestte weg
Affe3
Affe4 <--- muesste weg
Affe6 <--- muestte weg
So muesste es aussehen.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: Frage Listbox doppelte Eintraege loeschen.

  Alt 11. Okt 2005, 13:50
Hallo lucius,

aufrufen musst du es mit: KillDuplicates(ListBox.Items);

Delphi-Quellcode:
procedure KillDuplicates(s: TStrings);
var
  iLow, iHigh: integer;
begin
  for iLow := 0 to s.Count - 2 do
    for iHigh := Pred(s.Count) downto Succ(iLow) do
      if s[iLow] = s[iHigh] then
        s.Delete(iHigh);
end;
marabu
  Mit Zitat antworten Zitat
Benutzerbild von flomei
flomei

Registriert seit: 17. Jan 2003
Ort: Schieder-Schwalenberg
2.094 Beiträge
 
Delphi 2005 Personal
 
#5

Re: Frage Listbox doppelte Eintraege loeschen.

  Alt 11. Okt 2005, 13:52
http://www.delphipraxis.net/internal...=143427#143427
http://www.delphipraxis.net/internal...=435048#435048
http://www.delphipraxis.net/internal...=435056#435056

Die Tipps und Codes funktionieren alle nicht?

Um Gottes Willen, wir brauchen dringend jemanden der mal vorsichtshalber alle Codes die hier stehen testet...

MfG Florian
Florian Meier
... ist raus.
Vielen Dank für die Zeit mit euch!
http://www.flomei.de -- http://www.md5hash.de
  Mit Zitat antworten Zitat
lucius

Registriert seit: 6. Okt 2005
Ort: Niederlande
215 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Frage Listbox doppelte Eintraege loeschen.

  Alt 11. Okt 2005, 13:58
Marabu klapt super, auch Matze und Flomei danke fuer eure Antworten.
Schoen das man so gut hier geholfen wird.

Gruss lucius..
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz