Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Bitmap aus Ressource ? (https://www.delphipraxis.net/114564-bitmap-aus-ressource.html)

Delphiturbo 27. Mai 2008 14:52


Bitmap aus Ressource ?
 
Hallo,

Mein Code funktioniert Fehlerfrei aber möchte ich das Bild nicht ständig
von Ressource aufrufen, immer wenn der Cursor auf das Button kommt

Wie kann ich am besten das Bild aufrufen ?


Delphi-Quellcode:
procedure TForm1.BitBtn1CMMouseEnter(var Message: TMessage);
var
  ptWork : TPoint;
    OnEnter1: TResourceStream;
begin
  OnEnter1:= TResourceStream.CreateFromID(HInstance, 106, RT_RCDATA);

  GetCursorPos(ptWork);

      if WindowFromPoint(ptWork) = BitBtn1.Handle then
  begin
    BitBtn1.Glyph := nil;
    BitBtn1.Glyph.LoadFromStream(OnEnter1);
  end;
end;

Klaus01 27. Mai 2008 14:55

Re: Bitmap aus Ressource ?
 
Hallo,

kannst Du die Bilder (bmp) nicht in eine Imagelist packen (zur Designzeit)
und sie daraus laden.
Schlussendlich liegen sie aber auch dann als Resource vor,
nur das laden ist halt anders.

Grüße
Klaus

himitsu 27. Mai 2008 14:56

Re: Bitmap aus Ressource ?
 
indem du das BitMap irgendwo zwischenspeicherst? (z.B. in einem TBitMap, oder wie dir schonmal in dem BitBtn-Thread erzähl wurde, in einer einer TImageList)




und sicher daß dein Code fehlerfrei funktioniert?

Also ich seh da zumindestens schonmal ein Memoryleak.

Delphiturbo 27. Mai 2008 15:18

Re: Bitmap aus Ressource ?
 
Delphi-Quellcode:
in dem BitBtn-Thread erzähl wurde, in einer einer TImageList) // das Bild ist aber 32x128 und kann ich damit leider nicht in einer ListImage speichern, oder?
Delphi-Quellcode:
und sicher daß dein Code fehlerfrei funktioniert? //Ja ;)

Neutral General 27. Mai 2008 15:20

Re: Bitmap aus Ressource ?
 
Zitat:

Zitat von Delphiturbo
// das Bild ist aber 32x128 und kann ich damit leider nicht in einer ListImage speichern, oder?

Delphi-Quellcode:
ImageList.Width := 32;
ImageList.Height := 128;
;)

Gruß
Neutral General

lbccaleb 27. Mai 2008 15:39

Re: Bitmap aus Ressource ?
 
Zitat:

Zitat von Delphiturbo
Delphi-Quellcode:
und sicher daß dein Code fehlerfrei funktioniert? //Ja ;)

trotzdem vergisst du in deinem code den speicher freizugeben..

Delphiturbo 27. Mai 2008 16:15

Re: Bitmap aus Ressource ?
 
Zitat:

Zitat von Neutral General
Delphi-Quellcode:
ImageList.Width := 32;
ImageList.Height := 128;
;)

Ooh Danke!
ich muss nur die Eigenschaft von Listimage in OI ändern, dann werden diese Größe
in Listimage akzeptiert :thumb:

Dann brauche ich die Bitmaps (Icons) nicht mehr von Ressource zu laden :mrgreen:

gruß

rollstuhlfahrer 27. Mai 2008 16:16

Re: Bitmap aus Ressource ?
 
HI,

natürlich geht es auch, indem du deinen Stream zu beginn öffnest und mit dem Beenden wieder schließst. Dann kannst du jedes Mal auf den Strae zugreifen.

rollstuhlfahrer

PS: zu spät


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:42 Uhr.

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