Einzelnen Beitrag anzeigen

Destroyer446

Registriert seit: 17. Jan 2011
67 Beiträge
 
#1

Access violation bei dynamischen Arrays

  Alt 13. Jun 2011, 15:16
Hi!
Ich hab ein Problem: Mein Delphi sagt Access violation bei 2 dynamischen Arrays.
Mein Quelltext:
Delphi-Quellcode:
var
 sl: TStringList;
 FBild1, FBild2: Array of TColor;
 i1, i2: Integer;
begin
 sl := TStringList.Create;
 sl.Add('*** Bild1 ***');
 sl.Add('');
 For i1 := 0 to Image1.Picture.Width do
 begin
  For i2 := 0 to Image1.Picture.Height do
  begin
   FBild1[Image1.Picture.Bitmap.Canvas.Pixels[i1,i2]] := FBild1[Image1.Picture.Bitmap.Canvas.Pixels[i1,i2]]+1;
   FBild2[Image2.Picture.Bitmap.Canvas.Pixels[i1,i2]] := FBild2[Image2.Picture.Bitmap.Canvas.Pixels[i1,i2]]+1;
  end;
 end;
 For i1 := Low(FBild1) to High(FBild1) do
 begin
  If FBild1[i1] <> 0 then
   sl.Add('Farbwert: '+IntToStr(i1)+'; Vorhanden: '+IntToStr(FBild1[i1])+'x');
 end;
 sl.Add('');
 sl.Add('*** Bild2 ***');
 sl.Add('');
 For i2 := Low(FBild2) to High(FBild2) do
 begin
  If FBild2[i2] <> 0 then
   sl.Add('Farbwert: '+IntToStr(i2)+'; Vorhanden: '+IntToStr(FBild2[i2])+'x');
 end;
 ShowMessage(sl.GetText);
 sl.Free;
Ist da ein Fehler drinn?
Das Programm soll ausgeben, wieviel Farbwerte in 2 Bildern sind.

Danke
  Mit Zitat antworten Zitat