AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Problem mit Invalidate
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit Invalidate

Ein Thema von punker76 · begonnen am 20. Jun 2006 · letzter Beitrag vom 21. Jun 2006
 
Benutzerbild von punker76
punker76

Registriert seit: 11. Jan 2004
Ort: Alsdorf
98 Beiträge
 
Delphi 7 Personal
 
#1

Problem mit Invalidate

  Alt 20. Jun 2006, 12:41
Hallo Ihrs

Ich habe ein kleines Problem, das mit einer Zeichenroutine zu tun hat.
Das ganze hat mit der Spectrum-Anzeige meines Players zu tun: Go

Die Anzeige bleibt einfach irgendwann stehen (friert ein), wenn ich wie folgt vorgehe:

Delphi-Quellcode:
...

procedure TMainForm.MainTimerEvent(Sender: TObject);
begin
  Spectrum.Draw;
end;

...

type
  TSpectrum = class (TPanel)
  ...
  end;

...

procedure TSpectrum.Draw;
begin
  // mach was: Zeichne in Buffer
  ...
  BitBlt(self.Canvas.Handle, 0, 0, FBuffer.Width, FBuffer.Height, FBuffer.Canvas.Handle, 0, 0, SRCCOPY);
end;

...
Wenn ich das ganze aber so mache, dann funktioniert alles Prima. Der einzige Nachteil ist, das die CPU Last ziemlich steigt (was man bei älteren CPU's merkt).

Delphi-Quellcode:
...

procedure TMainForm.MainTimerEvent(Sender: TObject);
begin
  Spectrum.Invalidate;
end;

...

type
  TSpectrum = class (TPanel)
  ...
  end;

...

procedure TSpectrum.Paint;
begin
  Draw;
end;

procedure TSpectrum.Draw;
begin
  // mach was: Zeichne in Buffer
  ...
  BitBlt(self.Canvas.Handle, 0, 0, FBuffer.Width, FBuffer.Height, FBuffer.Canvas.Handle, 0, 0, SRCCOPY);
end;

...
Weiss, denn einer Rat? Wird bei dem Invalidate noch irgendetwas anderes gemacht?

Danke

MFG
Angehängte Grafiken
Dateityp: jpg zwischenablage01_105.jpg (5,7 KB, 38x aufgerufen)
Jan Karger
Punk's not dead!!!
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz