Hallo, ich habe einmal diese Funktion:
Delphi-Quellcode:
function TMainForm.getrandcards(const Anzahl:integer; var Karten:TStrings):string;
var i,rand:integer;
begin
randomize;
for i:=1 to Anzahl do
begin
if i >1 then result :=result +';';
rand :=random(Karten.Count)+1;
result :=result +Karten.Strings[rand];
Karten.Delete(rand);
end;
end;
die ist dafür da Karten (von Skat) zu geben. Die Karten sind in TStrings. Pro Zeile eine Karte. Diese Funktion soll jetzt eine Anzahl Karten in einem String duch Semikolons getrennt geben. Das ist die procedure aus der die Funktion aufgerufen wird:
Delphi-Quellcode:
procedure TMainForm.Austeilen;
var Karten :TStrings;
begin
Karten :=TStrings.Create;
Karten.LoadFromFile(ExtractFilePath(ParamStr(0))+'daten\Karten.txt');
showmessage(getrandcards(10, Karten));
end;
Um zu sehen ob es funzt lasse ich das Ergebniss von 10 zufälligen Karten in einer showmessage geben. Zu der Showmessage kommt es aber nicht, weil es an der Stelle ein "Abstract Error" gibt. Woran kann das Liegen?
Letzter Tipp: Drogen. Machen zwar nicht glücklich, geben einem aber wenigstens das Gefühl glücklich zu sein.
Have a lot of fun!