Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Image Flackert, wenn Cursor nicht über Formular.

  Alt 21. Aug 2006, 08:21
Du machst genau das was Luckie vermutetet hat. Bei jeder Aktion die du ausführst auf die Canvas wird die Ausgabe aktuallisiert was das Flackern verursacht. Machs so:
Delphi-Quellcode:
var lBmp: TBitmap;
begin
  lBmp := TBitmap.Create;
  try
    //Alle Aktionen auf eine Canvas/Bitmap im Speicher ausführen
    lBmp.SetSize(PaintBox.Width, PaintBox.Height);
    lBmp.Canvas.MoveTo(0, Height div 2);
    For i := 1 To 255 do
      lBmp.Canvas.LineTo(i, FFTData[i]);
    //Und jetzt das Bitmap mit einem Rutsch auf die Canvas kopieren
    BitBlt(PaintBox.Canvas.Handle, 0, 0, lBmp.Width, lBmp.Height, lBmp.Canvas.Handle, 0, 0, SRCCOPY);
  finally
    lBmp.Free;
  end;
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat