Wie kann man einen bestimmten Bereich (TRect) auf einer TImage in einen Puffer speichern und dann wieder auf die TImage kopieren?
Ich bräuchte das, um ein Polygon innerhalb dieses Bereichs ohne Flimmern mit Maus über das Timage ziehen zu können. Oder gibt es da noch andere Methoden?
Und wie würde das konkret aussehen?
Herzlichen Dank!
Das Programm sähe in etwa so aus:
Code: Alles auswählen
r = gewünschtes TRect
p = Polygon
speichern(r,puffer) --> speichert r nach Puffer; setzt gespeichert: = true
holen(r,puffer) ---> puffer wieder ausgeben auf TImage
procedure Tform1.Image1Mousemove(....x,y..)
const altr:Trect = rect(0,0,0,0); // zur Sicherung des Bereichs
begin
r:= rect(...) // in Abhängigkeit von x,y
if not gespeichert then speichern(r,puffer);
holen(altr, puffer); // TImage wieder zurücksetzen
speichern(r,puffer);
canvas.polygon(p);
altr:=r; // Bereich sichern
end;