Moin!
Schalte mal den Range Check bei dir mit ein bei den Projektoptionen, da du in folgendem Code eine ERangeCheckError bekommen solltest:
Code:
procedure TForm1.HoeheChange(Sender: TObject);
var
X,Y : Integer;
S1 : PByteArray;
begin
X := Hoehe.Value;
Y := Breite.Value;
S1 := BitMap.ScanLine[X];
Blau.Text := IntToStr((PByte(Integer(S1) + Y * 3)^)); //Blau
Gruen.Text :=IntToStr((trunc(PByte(Integer(S1) + Y * 3 + 1)^))); // Grün
Rot.Text := IntToStr((trunc(PByte(Integer(S1) + Y * 3 + 2)^))); //Rot
end;
Da ScanLine[] nur von 0 bis Höhe-1 definiert ist, sollte es bei dem Zugriff auf Scanline x-1 heissen...
MfG
Muetze1