Einzelnen Beitrag anzeigen

Medium

Registriert seit: 23. Jan 2008
3.679 Beiträge
 
Delphi 2007 Enterprise
 
#7

Re: Canvas im Hintergrund zeichnen / auslesen

  Alt 4. Mai 2009, 10:13
Zitat von bernau:
Nicht ausprobiert, aber ein "PaintBox1.invalidate" zwingt eigendlich zum neuzeichnen.

Gerd
Das führt letztlich nur die API InvalidateRect() mit dem Rect der Paintbox aus. Windows weiss aber wenn ein Control bzw. Canvas verdeckt ist, und zeichnet dann (edit: wenn überhaupt) das oberste verdeckende neu. Sonst würde das auch ganz fürchterlich flackern.

Ein Canvas bzw. DC kann immer nur das liefern, was auch gerade in dem zugehörigen Rect dargestellt wird - da führt kein Weg dran vorbei. Deswegen ist es auch absolut üblich ein Bitmap zu führen dass die aktuelle Anzeige enthält, und nur bei Bedarf (OnPaint) auf die PaintBox geblitted wird. Aus dem Bitmap kannst du dann natürlich auch die Daten zum senden holen ohne sie je anzeigen zu müssen.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat