円などを平行移動させることはできるのですが、それをフォーム上にランダムに発生させるにはどのようにすればよいのでしょうか?だれか教えて下さい。
ランダム=乱数なら、Random関数で取得できます。
違う意味であれば、もう少し詳しく書いてみてください。
すいません!詳細は、for文を使って円を平行移動させるというスクリーンセーバーを作っているんです。
for i:=0 to 30 do begin
Canvas.Pen.Color:=clBlue;
Canvas.Pen.Width:=4;
x1 := (0);
y1 := (0);
x2 := (50);
y2 := (50);
Canvas.Ellipse(x1+i*2,y1+i*8,x2+i*5,y2+i*8);
sleep(20);
Canvas.Pen.Color := clBlue;
Canvas.Ellipse(x1+i*2,y1+i*8,x2+i*5,y2+i*8);
sleep(35);
といったような感じで。んでこの動きをする円をいろんな場所からランダムに発生させたいということなんですが…
多分わたしが作ったスクリーンセーバーとやりたいことは似ていると思いますけど…。
(ソース公開してますから、よければうちのページからどうぞ)
クラスを作って、それで円を書いてしまえば楽なんじゃないでしょうか?
ランダムでそのクラスを増殖させれば、いくらでも増やせます。
いつ開放するかが考えどころかと思いますけど。
ツイート | ![]() |