Zitat von
xaromz:
Delphi-Quellcode:
ListBox1.Items.BeginUpdate; // <--
for i:=1 to StrToInt64(Edit1.Text) do//////hier wird bestimmt wieviel Zz erzeugt werden
begin
Zahl :=random(7)+1;
meineListe.Add(IntToStr(Zahl)); // <--
if Zahl in [1,37] then farbe := clblue else
farbe := clyellow;
Listbox1.Items.InsertObject(0,IntToStr(Zahl), Pointer(farbe));
end;
ListBox1.Items.EndUpdate; // <--
Wenn du nun auch noch statt
for i:=1 to StrToInt64(Edit1.Text) do
for i := StrToInt64(Edit1.Text) downto 1 do
schreibst, ist dein Code
1. nochmal etwas schneller, und
2. hast du sogar die gleiche reihenfolge der zufallszahlen wie bei deinem code.
(normalweiße egal da ja alle zahlen zufällig sind, es soll aber doch Leute geben für die mit random erzeugte zufallszahlen nicht zufällig sind)
Um wieder auf deinen Code zurück zu kommen:
Delphi-Quellcode:
...
Zahl :=random(7)+1;
...
if Zahl in [1,37] then farbe := clblue else // deine Zahl wird nie 37 sein
...
ob der code schneller wird, wenn du die 37 wegnimmst, weiß ich nicht, aber da der fall sowieso nicht eintrifft, würd ich sie rauslöschen.
gruss