Re: Zeichnen - leichtes Flimmern
8. Feb 2005, 16:39
Moin!
Grundlegendes:
1. Kein DoubleBuffered verwenden
2. BitBlt verwenden mit einem Hintergrundbild
3. PaintBox verwenden ist ok, dann im OnPaint aber auch mit InterSectRect() und Canvas.ClipRect arbeiten
4. FillRect und BitBlt mit dem angegebenen ClipRect des Canvas beschränken
Und damit das ganze auch flimmerfrei sein kann nicht Invalidate verwenden (was bei einer TPaintBox das Invalidate des gesamten Parents auslösen würde (somit der Form höchst wahrscheinlich) sonder mit InvalidateRect() auf das Rechteck der TPaintBox beschränkt.
Dadurch wird das ganze optimierter, flimmerfrei und vor allem Resourcen schonender. DoubleBuffer ist wirklich langsam.
MfG
Muetze1
|