以下の様な、ボタンを押すとEdit1にランダムに文字が展開されるプログラムを作ってみました。
内容は、0-9、a-z、A-Zの文字例を使い、5〜10文字のランダムな文字例を生成する、言ったものです。
しかし、ボタンを何度か押してみると2文字や0文字、11文字等と言った文字数の文字例が作成されてしまう事があります。
原因と、対処法を教えて下さい。
function RandomStr(key: String): String;
var
i: Integer;
begin
Randomize;
for i := 0 to Random(6)+5 do Result := Result+key[Random(Length(key))];
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Edit1.Text:=RandomStr('0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ');
end;
すいませんダブりです
ツイート | ![]() |