![]() |
Doppelte Einträge in Listbox verhindern
Ich hab mal eine ganz doofe Frage. Ich glaube, letztens hab ich mal gesehen, wie man erreichen kann, dass in einer TStrings-Liste wie z. B. in einer Listbox jeder String nur einmal vorkommt. Das war soweit ich weiß eine einfache Eigenschaft. Aber ich find síe jetzt nicht mehr. Entweder sollte ich mal meine Augen untersuchen lassen oder ich hab halluziniert. Falls ersteres zutrifft, dann könnt ihr mir sicher noch mal auf die Sprüge helfen. Bei zweiterem würden vielleicht Adressen von Psychiatern helfen.
|
Moin Chewie,
Du meinst wahrscheinlich die Eigenschaft Duplicates. Die Items einer ListBox verfügen allerdings nicht über diese Eigenschaft. Du könntest Dir aber mit IndexOf behelfen. Diese Methode kennen auch die ListBox.Items. |
Hi,
Delphi-Quellcode:
HTH
procedure TForm1.Button1Click(Sender: TObject);
var i: integer; begin for i := 0 to ListBox1.Items.Count -1 do begin if ListBox1.Items.Strings[i] = Edit1.Text then begin ShowMessage('Das Wort ' + ListBox1.Items.Strings[i] + ' wurde gefunden!'); end; end; end; Grüsse, Daniel :hi: |
Puh, gott sei Dank keine Halluzination. Ich werds dann wohl mit IndexOf machen, danke. Bbei welcher Klasse hab ich eigentlich dann Eigenschaft gesehen? Ich benutz nämlich nnur recht wenige VCL-Klassen und dachte, es wär die Listbox.
|
Zitat:
|
Moin Chewie,
Duplicates ist eine Eigenschaft von TStringList. |
Zitat:
|
Andere Möglichkeit:
Delphi-Quellcode:
Chris
function delDoubleEntries(aList:TStrings):integer;
var a, b: integer; begin result := 0; if not Assigned(aList) then exit; while a < aList.count - 1 do begin b := a + 1; while b < aList.count-1 do begin if aList.Strings[a] = aList.Strings[b] then aList.Delete(b) else inc(b); end; inc(a); end; result := aList.count; end; |
so müsste es auch funzen:
Code:
ist vielleicht die einfachste möglichkeit;-)
if listbox1.IndexOf('wort')> -1 then showmessage('wort gefunden');
habs jetzt aus dem kopf gemacht, deshalb ohne garantie! |
Re: Doppelte Einträge in Listbox verhindern
[OT] Wer schreibt denn Werbung in uralte Threads? :gruebel: [/OT]
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:55 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz