Paintbox flickerfrei bemalen
-
Servus, komm net ganz klar mit dem Flickern bei der Paintbox.
Ich möchte gerne ein paar Kisten, etc auf eine Paintbox zeichnen, die wieder löschen und an eine anderen position (z.B. x+1) neu zeichnen. eider flackert das alles so, dass es AUgenkrebs gibt.
Habe einen Ansatz, mehr aber nicht
TRect *rec = new TRect; rec->Left=x; rec->Top=y; rec->Right=x+25; rec->Bottom=y+17; Graphics::TBitmap *Backbuffer = new Graphics::TBitmap(); Backbuffer->Width=300; Backbuffer->Height=300; Backbuffer->Canvas->Brush->Color=clRed; Backbuffer->Canvas->FillRect(*rec); BitBlt(Form1->PaintBox1->Canvas->Handle, 0, 0, 300, 300,Backbuffer->Canvas->Handle, 0, 0, SRCCOPY); //Form1->PaintBox1->Canvas->Brush->Color=clRed; //Form1->PaintBox1->Canvas->FillRect(*rec); delete Backbuffer; delete rec;
Thx for Help
-
ich weiß nicht genaus was du mit Flickern meinst, aber vll hilft dir
DoubleBuffered = true
was.
Gruß Kai
-
ne leider bringt das nix
-
wie hast dus benutzt?
z.b. so
Form->DoubleBuffered=true
dann ists eigentlich weg
kommt natürlich drauf an was es fürn Flickern ist. :xmas1:
-
Versuche mal in Verbindung mit DoubleBuffered nicht in die PaintBox sondern in TImage oder TPanel zu zeichnen.
Gruss