Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Problem mit Combobox (https://www.delphipraxis.net/60357-problem-mit-combobox.html)

fran 5. Jan 2006 18:12


Problem mit Combobox
 
Hallo,

ich habe da ein Problem mit einer Combobox.

Also ich habe eine Combobox auf einem Tabsheet.

Beim Betreten des Tabsheets wird die Combobox mit Daten aus einer Datenbank gefüllt und damit sie immer auf dem neuesten Stand ist soll beim erneuten Betreten neu gefüllt werden, wobei die Anzahl der Einträge unterschiedlich sein kann.

Bevor ich sie neu fülle, muss sie allerdings erst einmal geleert werden, was ich mit folgender Schleife probiert habe:

Delphi-Quellcode:
for a:=1 to strtoint(edit169.Text) do
                combobox1.Items.Delete(a);

Verzichte ich auf das Leeren, so gibt es doppelte Einträge. In edit169.text steht übrigens stets die aktuelle Anzahl an Einträgen.

Das Problem bei der Schleife ist, das sie nicht korrekt arbeitet. Wenn ich z.B. 4 Einträge habe, so werden nur die Einträge 2 und 3 gelöscht, die anderen bleiben komischerweise drin.

Übrigens wenn ich die Schleife von 0 beginnen lasse, wird der 1. und der 3. Wert gelöscht.

Ich hoffe es kann mir jemand bei dem Problem helfen.

Vielen Dank schon mal im Voraus sagt

Fran

jfheins 5. Jan 2006 18:14

Re: Problem mit Combobox
 
Probiers mal so:
Delphi-Quellcode:
for a:=strtoint(edit169.Text) downto 0 do
                combobox1.Items.Delete(a);
;)

mOzZzI 5. Jan 2006 18:18

Re: Problem mit Combobox
 
Weiß jetzt echt nicht obs klappt aber versuchs mal so...

Delphi-Quellcode:
...
begin
ComboBox1.Clear;
end;
...

fran 5. Jan 2006 18:36

Re: Problem mit Combobox
 
Danke nochmal.

Beide Lösungen funktionieren bestens, auch wenn ich nicht verstehe warum die Schleife rückwärts geht und vorwärts nicht, aber egal Hauptsache es geht.

Fran

tomsel 5. Jan 2006 19:46

Re: Problem mit Combobox
 
Zitat:

auch wenn ich nicht verstehe warum die Schleife rückwärts geht und vorwärts nicht,
Ganz einfach: Weil beim Löschen am Anfang der Liste die hinteren Einträge "nachrutschen".


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:11 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