Das funzt
Danke!
EDIT:
Oder auch nicht. Da habe ich mich davon täuschen lassen, dass das Image mit Maximierung der Form seine Größe ändert. Wenn ich dann im maximierten Zustand das Bild über obige Funktion neu zeichnen lasse, stimmt das ClipRect immer noch nicht und man erhält bei Stretch=True dann eben den Bildausschnitt gestreckt ...
Die Frage ist also weiterhin offen. Die Lösung aus der Onlinehilfe mit setzen des ClipRect:
Delphi-Quellcode:
MyRgn: HRGN ;
begin
MyRgn := CreateRectRgn(100,100,200,200);
SelectClipRgn(Image1.Canvas.Handle,MyRgn);
Image1.Canvas.Brush.Color := clRed;
Image1.Canvas.FillRect(Image1.Canvas.ClipRect);
Image1.Invalidate;
SelectClipRgn(Image1.Canvas.Handle,nil);
DeleteObject(MyRgn);
end;
funktioniert übrigens auch nicht. Mal davon abgesehen, dass SelectClipRgn(Image1.Canvas.Handle,nil); vom Compiler nicht zugelassen wird ...