Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Zwei Arten Bitmaps zuzuweisen -- Was ist der Unterschied? (https://www.delphipraxis.net/148354-zwei-arten-bitmaps-zuzuweisen-ist-der-unterschied.html)

Jazzman_Marburg 28. Feb 2010 11:34


Zwei Arten Bitmaps zuzuweisen -- Was ist der Unterschied?
 
Werte Gemeinde,

was ist eigentlich der Unterschied zwischen diesen beiden Arten, um ein Bitmap einer TImage Komponente zuzuweisen:

Delphi-Quellcode:
FImage.Picture.Bitmap := FBild;
FImage.Picture.Bitmap.Assign(FBild);
Lieben Dank!

Gruß
Jazzman

implementation 28. Feb 2010 11:38

Re: Zwei Arten Bitmaps zuzuweisen -- Was ist der Unterschied
 
Beim ersten zeigt FImage.Picture.Bitmap hinterher auf das selbe Objekt wie FBitmap.
Beim zweiten zeigt FImage.Picture.Bitmap auf ein anderes Objekt, alle Eigenschaften werden aber von FBitmap übernommen.

jbg 28. Feb 2010 11:47

Re: Zwei Arten Bitmaps zuzuweisen -- Was ist der Unterschied
 
Zitat:

Zitat von implementation
Beim ersten zeigt FImage.Picture.Bitmap hinterher auf das selbe Objekt wie FBitmap.

Falsche. Dabei wird SetBitmap aufgerufen, was SetGraphic aufruft, welches wiederum das bestehende TPicture.Bitmap freigibt und eine 1 zu 1 Kopie des zugewiesenen Bitmaps erzeugt. FImage.Picture.Bitmap und FBitmap zweigen also danach nicht auf den selben Speicherbereich.

implementation 28. Feb 2010 11:49

Re: Zwei Arten Bitmaps zuzuweisen -- Was ist der Unterschied
 
Na dann - ich hatte mir den Setter noch nicht angeguckt, bloß vermutet, dass er eben irgendein FGraphic oder so setzt.

DeddyH 28. Feb 2010 12:02

Re: Zwei Arten Bitmaps zuzuweisen -- Was ist der Unterschied
 
Zu implementations Ehrenrettung sollte man aber erwähnen, dass es so wäre wie geschildert, wenn dies nicht im Setter abgefangen würde. Nicht, dass jemand nachher meint, das sei auch bei andern Objekten so und sich jede Menge Speicherlecks einfängt.


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