Hallo Lisa,
erstmal verwende bitte die [ delphi] [ /delphi]-Tags (ohne Leerzeichen), dann kann man den Code auch vernuenftig lesen.
Zum Problem: Der Code den du gepostet hast ist falsch. Du willst ja keine Zahl doppelt haben. Nachdem du kein Set benutzt, musst du es so machen wie Fiasko gesagt hat:
Delphi-Quellcode:
for i:= 1 to 6 do
begin
repeat
Y:=random(49)+1;
until ListBox1.Items.IndexOf(IntToStr(y))=-1;
ListBox1.Items.Add(inttostr(y));
end;
Nun die Erklaerungen:
wir machen das Ganze 6 mal, wie bereits gehabt. Anstatt aber nun die Zahl zu suchen, und dann hinzuzufuegen, suchen wir nun bis dir Zahl nicht mehr in der ListBox ist. Dies erledigt der Befehl ListBox1.Items.IndexOf (
IndexOf). Wird das Element nicht gefunden, so liefert die Funktion -1 zurueck. In dem Fall fuegen wir die Zahl der Liste hinzu, ansonsten suchen wir weiter.
Greetz
alcaeus