Hi
ich sehe hier zwei Probleme und einen Fehler.
Quelltext
1: 2: 3: 4: 5: 6:
| if AAuswahl[a] = tormatrix[i,j].Name then continue else AAuswahl[a] := tormatrix[i,j].Name; a:=a+1; end; |
An dieser Stelle frägst du nur ab ob der
aktuelle Eintrag von AAuswahl gleich tormatrix[].Name ist. Du müsstest aber Prüfen ob der Inhalt von tormatrix[].Name schon irgendwo in AAuswahl steht. Du musst hier an der Stelle also in einer Schleife alle a durchgehen.
Dazu kommt, und das ist jetzt der Fehler, dass a
immer erhöht wird. Ich nehme mal stark an das soll aber nur passieren, wenn ein neuer Eintrag in AAuswahl eingetragen wurde. Es muss also heissen:
Quelltext
1: 2: 3: 4: 5:
| else begin AAuswahl[a] := tormatrix[i,j].Name; a:=a+1; end; end; |
Das zweite Problem steckt hier:
Quelltext
1: 2:
| for i:= 1 to 1000 do ComboBox1.Items.Add(AAuswahl[i]); |
Ich geh mal davon aus, dass du die Combobox vorher gelöscht hast (wehe wenn nicht

), aber auf jeden Fall trägst du 1000 Einträge ein, egal ob was drinsteht oder nicht. Besser wäre die Schleife nicht bis 1000 sondern nur bis a - 1 auszuführen.
Gruss Lothar
Der BH ist für die Brust, der Plan ist für'n Ar...