Zitat von
leddl:
Mir fällt spontan nur ein, die Listbox von vorne durchzugehen und zu prüfen, ob die Zahl am entsprechenden Index Index+1 ist. Ist das nicht der Fall, kannst du Index + 1 einfügen. (Vorausgesetzt, du startest mit 1, und nicht mit 0)
Also:
Delphi-Quellcode:
For i := 0 To ListBox1.Items.Count Do
If StrToInt(ListBox1.Items[i]) > i+1 Then
break;
//i+1 ist die Zahl, die eingefügt werden muß
//i ist der Index, bei dem eingefügt werden muß
Sollte aber auch so funktionieren.
Delphi-Quellcode:
i := 0;
While (i <= ListBox1.Items.Count - 1) and (StrToInt(ListBox1.Items[i]) = i+1) Do
inc(i);
//i ist die Zahl, die eingefügt werden muß
//i-1 ist der Index, bei dem eingefügt werden muß
Ist aber jetzt alles nur aus dem Kopf schludrig hingeschrieben und kann noch Denkfehler beinhalten.
Danke, kannst du mir auch sagen, welche Lösung schneller ist? Da brauche ich jede Mikrosekunde