Thema: Delphi Acess Violation

Einzelnen Beitrag anzeigen

Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#10

Re: Acess Violation

  Alt 26. Mär 2010, 14:42
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
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat