Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Bild flackern trotz double buffered (https://www.delphipraxis.net/108431-bild-flackern-trotz-double-buffered.html)

gasty 13. Feb 2008 14:35


Bild flackern trotz double buffered
 
Hi erstmal :D
Ich habe folgendes Problem:
Also ich habe eine Gif-Animation in mehrere Bitmaps zerlegt und diese als Resource in mein Delphi Projekt geladen.
Dann mit Timern bewegt und immer neues Bild geladen, klappt auch alles, bis auf das Bild-Flackern,
obwohl ich DoubleBuffered auf true hab. Gibt es denn da noch eine andere Möglichkeit?

Danke schonmal!

patti 13. Feb 2008 14:53

Re: Bild flackern trotz double buffered
 
Verwendest du zur Anzeige der Bilder eine normale TImage-Komponente? Wenn ja, liegt diese direkt auf dem Formular oder in einem extra Panel?

gasty 13. Feb 2008 14:54

Re: Bild flackern trotz double buffered
 
Ja, ist eine normale Timage Komponente und liegt auf einem Extra-Panel.

Matze 13. Feb 2008 14:57

Re: Bild flackern trotz double buffered
 
Moin,

hast du auch DoubleBuffered des Parent-Panels auf true gesetzt?
Du musst dafür immer die Eigenschaft des Parent-Elements, also der Komponente, auf der das TImage liegt, nehmen.

patti 13. Feb 2008 14:58

Re: Bild flackern trotz double buffered
 
Dann musst du nicht mit

Delphi-Quellcode:
Form.DoubleBuffered := true;
arbeiten, sondern mit

Delphi-Quellcode:
Panel.DoubleBuffered := true;
Wenn du das noch nicht gemacht hast, dann probier es mal so ;-)

Patti

ROTER KASTEN :oops:

gasty 13. Feb 2008 15:01

Re: Bild flackern trotz double buffered
 
Ok, klappt jetzt :wink:
Danke für die schnelle Hilfe :-D

patti 13. Feb 2008 15:03

Re: Bild flackern trotz double buffered
 
Kein Problem ;-)

Ykcim 6. Jun 2018 14:01

AW: Bild flackern trotz double buffered
 
Das Thema ist zwar schon uralt, aber es passt nun mal...

Ich habe ein GIF in einem TGIFImage ligen, bei dem ich das Flackern nicht wegbekomme...

Delphi-Quellcode:
procedure TForm_Main.TabSheet_AusbuchenShow(Sender: TObject);
begin
   //Gif Etikett
   Image_GIF_Ausbuchen.Picture.LoadFromFile(extractfilepath(application.exename)+'\Ausgang_scannen.gif');
   (Image_GIF_Ausbuchen.Picture.Graphic as TGIFImage).AnimateLoop := glEnabled;
   (Image_GIF_Ausbuchen.Picture.Graphic as TGIFImage).Animate := true;

   Panel_GIF_Ausbuchen.DoubleBuffered:=true;
   TabSheet_Ausbuchen.DoubleBuffered:=true;
   PageControl_Main.DoubleBuffered:=true;
   Form_Main.DoubleBuffered:=true;
end;
Das Image_GIF_Ausbuchen liegt auf dem Panel_GIF_Ausbuchen, welches auf dem TabSheet_Ausbuchen, welches zum PageControl_Main gehört, das auf dem Form_Main liegt. Überall habe ich DoubleBuffered auf true gesetzt, aber es flackert wie verrückt!

Hat jemand eine Idee?

Vielen Dank
Patrick

Blup 6. Jun 2018 15:37

AW: Bild flackern trotz double buffered
 
Ich würde DoubleBuffered bereits im Ereignis FormCreate setzen:
Delphi-Quellcode:
procedure TForm_Main.FormCreate(Sender: TObject);
begin
  DoubleBuffered:=true;
  PageControl_Main.DoubleBuffered:=true;
  TabSheet_Ausbuchen.DoubleBuffered:=true;
  Panel_GIF_Ausbuchen.DoubleBuffered:=true;
end;
Flackert es nur bei der Animation?

Ykcim 7. Jun 2018 08:26

AW: Bild flackern trotz double buffered
 
Hi Blup,

ich habe den Fehler gefunden. Ich muss die Größe des Images auf die Größe des GIF's einstellen. Wenn es zu groß ist, dann passiert das mit dem Flackern...

Vielen Dank
Patrick


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:54 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz