Thema: Delphi TComponent

Einzelnen Beitrag anzeigen

Knut

Registriert seit: 7. Aug 2003
38 Beiträge
 
Delphi 7 Personal
 
#5

Re: TComponent

  Alt 9. Aug 2003, 01:15
erstmal ganz viel codeschnipsel:
Delphi-Quellcode:
procedure TForm1.Timer1Timer(Sender: TObject);
var
 image : array[0..10] of TImage;
 j : integer;
begin
  randomize;
  image[i] := TImage.Create(Form1);
  image[i].Left := Random(Width);
  if i > 0 then begin
   for j:=0 to i do begin
   if (image[i].Left < (image[j].Left + Image[j].Width)) and
      (image[i].left > image[j].Left) and
      (image[i].Top > Image[j].Top) and
      (image[i].Top < (Image[j].Top + Image[j].Height)) then begin
       image[i].Free;
       end
      else
       begin
        image[i].Picture.LoadFromFile('stein.bmp');
        image[i].Parent := Form1;
        image[i].Top := 0;
        Inc(i);
       end;
      end;
      end
     else
      begin
       image[i].Picture.LoadFromFile('stein.bmp');
       image[i].Parent := Form1;
       image[i].Top := 0;
       Inc(i);
      end;
    if i = 10 then timer1.enabled := false;
  end;
sieht ziemlich komisch aus funktioniert auch nicht.
d.h.:den ersten timerdurchlauf, wenn i = 0 macht delphi noch mitaber denn wenn i=1 gibts ViolenceAccess in der if-klausel beider ersten überprüfung!

die sache mit dem j hab ich gemacht, damit ich überprüfen kann ob zwei steine aufeinander liegen.

wahrscheinlich gibts eh ne einfachere möglichkei als arrays. und die ist nicht nur einfacher sondern auch effektiver

* edt: hab vergessen zu sagen dass i jetz global is weiß nich ob des nötig is?!?
** edt: hab als parent mal paintbox1 und nicht form1 genommen, das hat delphi ein problem dass ich glaub paintbox nicht TwinControl is sindern irgendwas anders(weiß nicht mehr genau)
Was nicht fliegen kann, kann auch nicht abstürzen
  Mit Zitat antworten Zitat