Home » Tipps & Tricks » Grafik » Zeichnen » Grafik flickerfrei verschieben
Grafik flickerfrei verschieben
Wenn man, z.B. eine Grafik mit einem Timer verschiebt, treten störende Flickereffekte auf. Kann ich das irgendwie abstellen?
Ja das kannst Du. Du musst die Eigenschaft DoubleBuffered des Parents auf True setzen. Dies ist meist das Formular.
Dazu ein kleines Beispiel:
var Form1: TForm1; vx: Integer = 1; implementation {$R *.DFM} procedure TForm1.BitBtn1Click(Sender: TObject); begin Form1.DoubleBuffered := True; end; procedure TForm1.Timer1Timer(Sender: TObject); begin Image1.Left := Image1.Left + vx; if Image1.Left > ClientWidth - Image1.Width - 1 then vx := vx * -1; if Image1.Left < 1 then vx := vx * -1; end;