Entwickler-Ecke
Grafische Benutzeroberflächen (VCL & FireMonkey) - Bestimmte Einträge von der ComboBox löschen?
jackie05 - Sa 14.07.07 03:31
Titel: Bestimmte Einträge von der ComboBox löschen?
Hallo,
Ich habe nach meinem Problem schon hier im Forum gesucht und leider nix passendes gefunden.
z.B. möchte ich alle Einträge löschen, die keinen 'Hello' als Items beinhaltet.
Ich habe schon viele versuche probiert und leider kam ich nie auf das richtige ergebnis.
Ich wäre euch sehr dankbar, wenn ihr mein problem lösen könnt.
MfG
Moderiert von
Gausi: Topic aus Delphi Language (Object-Pascal) / CLX verschoben am Sa 14.07.2007 um 09:34
jackie05 - Sa 14.07.07 16:56
Danke.
Ich habe das auch so gemacht gehabt, aber so wird nur dieser Eintrag gelöscht, der angegeben wurde.
Delphi-Quelltext
1:
| ComboBox1.Items.Delete(ComboBox1.Items.IndexOf('test')); |
Ich möchte aber alle Eintrage löschen, die z.B. keinen 'test' als ComboBox1.Items haben.
Edit: Sry, ich habe mir das mal genauer durchgelesen, ich werde mal mit der Schleife prüfen, solange IndexOf 0 zurück gibt, das die Einträge gelöscht werden.
MfG
Heiko - Sa 14.07.07 19:20
Hallo,
dass würde so gehen, außer dass es nicht 0 wäre, sondern -1. Allerdings ist das ineffizient. Mach es lieber so:
Delphi-Quelltext
1: 2: 3: 4:
| for i:=ComboBox1.Items.Count-1 downto 0 do begin if ComboBox1.Items[i]="test" then ComboBox1.Items[i].Delete; end; |
Eine for-to-do-Schleife würde Probleme machen, (a sich die Indexe nachm löschen verändern, von daher hier downto.
PS: Fehler von der Syntax könnten hier sein, da ich es gerade ausm Kopf mache ;).
Grüße
Heiko
Blackheart666 - Sa 14.07.07 20:55
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| procedure TForm1.Button1Click(Sender: TObject); var i:Integer; begin for i := ComboBox1.Items.Count - 1 downto 0 do if ComboBox1.Items[i] <> 'Hello' then ComboBox1.Items.Delete(i); end; |
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!