Nun ich habe es momentan so:
Delphi-Quellcode:
var
Zeichenflaeche:TCanvas;
BitBltBitMap:BBitmap;
Procedure TPaintPanel.Paint;
Begin //----- Paint -----
BitBltBitmap.width := Self.Width;
BitBltBitmap.height := Self.Height;
Zeichenflaeche := BitBltBitmap.canvas;
If Assigned(fOnPaint) then
fOnPaint(Self);
BitBlt(Self.Canvas.Handle, 0, 0, Self.width, Self.height, BitBltBitmap.Canvas.Handle, 0, 0, SRCCOPY);
Zeichenflaeche := Self.canvas;
End; //----- Paint -----
funktioniert so weit auch ganz gut. Finde nur das ist nicht ganz konsequent, da ich ja nun im Prog alle Aufrufe von Paintpanel1.canvas durch Paintpanel1.Zeichenflaeche ersetzen muss(und das sind einige)...