Du darfst Randomize nur ein einziges Mal aufrufen.
Mechanismus: Randomize setzt die Variable
RandSeed auf einen Startwert abhängig von der aktuellen Systemzeit. Diese Zeit wird durch einen internen Zähler des Computers alle 18 Millisekunden geändert, dass heisst, solange sich die Zeit, zumindest für den Computer, nicht geändert hat, wird durch Randomize die Variable
RandSeed immer wieder auf den gleichen Startwert gesetzt. RandSeed wird zum Ermitteln der Zufallszahl genutzt. Da RandSeed sich aber nicht ändert, durch stetes Reset durch Randomize, bekommst Du mehrmals die gleiche "Zufallszahl".
Kurz: Randomize nur einmalig zum Programmstart aufrufen. Und schon klappts.
[edit]Danke Christian, da war natürlich ein Fehlerchen[/edit]
(Siehe:
http://www.delphipraxis.net/viewtopi...asc&highlight=)