Zitat von
Morphy:
Delphi-Quellcode:
procedure TForm1.FeldBauen;
var i,j:byte;
k,l:integer;
begin
for i:=1 to 10 do begin
for j:=1 to 20 do begin
labelfeld[i,j]:=TImage.Create(GroupBox3);
labelfeld[i,j].Parent:=GroupBox3;
labelfeld[i,j].left:=i*15+3;
labelfeld[i,j].top:=j*15+7;
labelfeld[i,j].width:=14;
labelfeld[i,j].height:=14;
end;
end;
LastTetrisfeld:=TTetrisfeld.create;
Tetrisfeld:=TTetrisfeld.create;
stein:=Tetrisfeld.SteinRandomcreate;
tetrisfeld.pause:=true;
k:=1;
l:=1;
for k:=1 to 10 do begin
for l:=1 to 20 do begin
labelfeld[k,l].Picture.Bitmap.LoadFromResourceName(HInstance, 'bg');
end;
end;
end;
var i,j:byte; das ist spätestens hier:
labelfeld[i,j].top:=j*15+7; nicht mehr so gülden, da 15*20 ein wenig größer als 255 ist, oder spekulierst Du auf irgendwelche Nebeneffekte, die ich nicht sehe?
(Übrigens ist es zumindestens während der Entwicklung sinnvoll, die Bereichsprüfung [Projektoptionen] einzuschalten, dann kommen auch aussagekräftige Fehlermeldungen)
edit:
warum nutzt Du eigentlich einmal i und j und dann k und l um auf das Array zuzugreifen?
Gruß
K-H