Delphi-Quellcode:
TForm1 = class(TForm)
Timer1: TTimer;
Panel1: TPanel;
Panel2: TPanel;
Panel3: TPanel;
Panel4: TPanel;
Panel5: TPanel;
Panel6: TPanel;
Panel7: TPanel;
Panel8: TPanel;
Image1: TImage;
Image2: TImage;
Image3: TImage;
Image4: TImage;
Image5: TImage;
Image6: TImage;
Image7: TImage;
Image8: TImage;
Image9: TImage;
Image10: TImage;
Image11: TImage;
Image12: TImage;
Image13: TImage;
Image14: TImage;
Image15: TImage;
procedure Timer1Timer(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Timer1Timer(Sender: TObject);
var I: Integer;
Image: Array[1..13] of TImage;
begin
for I := 0 to 12 do
if (Image[I+1].Top = 96) and (Image[I+1].Left = 8) then Image[I+1].Top := 48
else if (Image[I+1].Top = 48) and (Image[I+1].Left = 536) then Image[I+1].Top := 96
else if (Image[I+1].Top = 96) and (Image[I+1].Left = 536) then Image[I+1].Top := 144
else if (Image[I+1].Top = 144) and (Image[I+1].Left >= 9)then Image[I+1].Left := Image[I+1].Left - 8
else if (Image[I+1].Top = 144) and (Image[I+1].Left = 8) then Image[I+1].Top := 96
else Image[I+1].Left := Image[I+1].Left + 8;
end;
Dein
Image1 aus der Interfacekonfiguration ist nicht gleich
image[i+1] wenn i = 0.
Das mußt Du dann anders lösen, wenn ich mich recht erinnere geht das mit FindComponent,
aber da wissen andere besser drüber Bescheid.
Kannst Dir mal diesen Thread anschauen, ähnliches Problem wie Deines
http://www.delphipraxis.net/internal...=findcomponent
Eine andere Möglichkeit ist, Du erstellst Dir die Images zur Laufzeit.
Dann kannst Du die Arraystruktur verwenden.
Grüße
Klaus