Moin moin,
ich steig grad durch mein eigenes Programm nicht durch...
Folgendes ist der Fall:
Delphi-Quellcode:
i := 0;
repeat
if (combobox1.items.Strings[i] = 'YASU') or (combobox1.Items.Strings[i] = 'DT') then
combobox1.Items.Delete(i);
a := combobox1.Items.Count;
i := i+1;
until i >= combobox1.Items.Count+2;
Ich durchsuche eine Combobox nach den Wörtern YASU und DT... naja..
Er löscht immer nur DT, warum?
Alternative, damit es funzt ist
Delphi-Quellcode:
repeat
if combobox1.items.Strings[i] = 'DT' then
combobox1.Items.Delete(i);
if combobox1.Items.Strings[i] = 'YASU' then
combobox1.Items.Delete(i);
a := combobox1.Items.Count;
i := i+1;
until i >= combobox1.Items.Count+2;
Für micht ist das das selbe!? Wenn Yasu oder DT vorkommt lösche den, sonst mach weiter... hmmm
weitere abhilfe schafft aber auch, wenn ich in der ini datei aus der ich das ganze lade dt und yasu an erster stelle setzt, anstatt an letzter... aber es sollte mit beiden funktionieren, damit ich später nicht in der ini rumfuchteln muss...
ps... die variable a ist nur zu debug zwecken grad da, weil ich vorher ne endlosschleife hatte, weil i plötzlich größer war also combo.count und ich dort das > noch nicht dirn hatte... naja
hab mich halt gewundert
deswegen auch die +2 für zwei gelöschte einträge.
mfg
Marcel