Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi bitmap zeug (https://www.delphipraxis.net/71235-bitmap-zeug.html)

Langa 11. Jun 2006 18:33


bitmap zeug
 
Hallo zusammen soll bis morgen nen Quelltext komentieren und komm auch gut voran

Hab mal ne frage wozu brauch ich bei 2 bitmaps

Delphi-Quellcode:
procedure tform1.formcreate
begin
bitmap1.free;
bitmap2.free;
end;

Nils_13 11. Jun 2006 18:40

Re: bitmap zeug
 
Hi,

wenn du ein TBitmap erstellst, wird es "in den Speicher geführt". Wenn der Free-Befehl weggelassen wird, bleibt das TBitmap trotz z.B. schließen des Programmes im Speicher. Wenn du die Anwendung dann mehrfach gestartet hast, wird dein Computer im Laufe der Zeit immer langsamer, da dann alle TBitmaps immer noch im Speicher sind.

HuxXx 11. Jun 2006 18:42

Re: bitmap zeug
 
mit "Free" gibst du den Speicher frei, den das Object Bitmap verwendet hat.

// Edit: aahh..., zu spät...

Langa 11. Jun 2006 18:45

Re: bitmap zeug
 
und
Delphi-Quellcode:
 Doublebuffered := True;
um sie überlagern zu können

nehm ich an und wo zu macht der dann

Delphi-Quellcode:
  bitmap1.PixelFormat := pf8bit;

monta 11. Jun 2006 18:48

Re: bitmap zeug
 
free dürfte ja nun geklärt sein.

Aber ich find es ein bisschen verwirrend, wieso das Bitmap beim (zumindest nach Prozedurnamen) Formcreate freigegeben wird und nicht bei FormDestroy oder Formclose oder so.
Macht das Sinn? :gruebel:

Langa 11. Jun 2006 18:50

Re: bitmap zeug
 
oh hat ich mich vertiptt steht natürlich auch bei destroy drin :oops:

monta 11. Jun 2006 18:54

Re: bitmap zeug
 
^^achso :wink:

DoubleBuffered :=true dient eigentlich dazu, die Grafikausgabe nochmals zu Buffern, damit siebei Bewegungen oder so (wenn man Beispielsweise ein Image auf der Form verschiebt) nicht flakert, sondern möglichst flüssig dargestellt wird.

bitmap1.PixelFormat := pf8bit;
Sagt mir auf anhieb nichts, da dort aber 8bit stahet, wirde ich mal sagen, es bezieht sich auf die Farbtiefe, du setzt also Pixel mit 8Bit Fartiefe, also 256Farben.

//Die OH sagt dazu: Die Eigenschaft PixelFormat legt fest, in welchem Bit-Format das Bitmap-Bild angezeigt wird.

Langa 11. Jun 2006 18:55

Re: bitmap zeug
 
hm falcker tut es bei mir wie sau wenn ich den timer starte

Khabarakh 11. Jun 2006 18:56

Re: bitmap zeug
 
Zitat:

Zitat von Nils_13
Wenn der Free-Befehl weggelassen wird, bleibt das TBitmap trotz z.B. schließen des Programmes im Speicher.

Nicht wirklich.
Speicherleck

monta 11. Jun 2006 19:00

Re: bitmap zeug
 
Zitat:

Zitat von Langa
hm falcker tut es bei mir wie sau wenn ich den timer starte

seltsam, eigentlich sollte das durch DoubleBuffered verringert oder ausgeschaltet werden, kann natürlich sein, das es für die Anwendung einfach nicht ausreicht. Kenn mich nicht genau damit aus, weils das bei D3 nicht gibt, aber gibts nicht DoubleBuffered bei mehreren Komponeten einschließlich TForm? Mit anderen Worten, wäre die Frage, welches DoubleBuffered aktiviert wird.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:53 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