Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Windows.Bitmap in Delphi verwenden (https://www.delphipraxis.net/160135-windows-bitmap-delphi-verwenden.html)

hsg 29. Apr 2011 09:00

Windows.Bitmap in Delphi verwenden
 
Hi zusammen,

ich habe mal wieder ein sicherlich ganz kleines Problem, dass wahrscheinlich mit zwei Zeilen Code lösbar ist, aber ich bin heute einfach zu vernagelt, um die Lösung zu sehen :lol:

Ich habe in einer Visual-Studio-DLL eine Funktion, die mir den Zeiger auf ein Bitmap liefert (Bitmap * GetCode()) und möchte diesen Rückgabewert in meinem Programm verwenden, aber das bekomme ich einfach nicht hin.
Delphi-Quellcode:
 
  var
     dstBmp : TBitmap;
     srcBmp : Windows.Bitmap;
     oPtr  : Pointer;
  begin
     oPtr  := GetCode();
     dstBmp := TBitmap.Create();
     nRes  := GetObject(dstBmp.Handle, sizeof(srcBmp),oPtr);
     if nRes = 0 then begin
       Image1.Picture.Bitmap.Assign(dstBmp);
     end; // if nRes = 0
  end;
Leider bleibt das Image1 leer :(
Wie geht es richtig??

freeway 6. Mai 2011 21:46

AW: Windows.Bitmap in Delphi verwenden
 
mein vorschlag
Delphi-Quellcode:
Image1.Picture.Bitmap.Assign(Windows.Bitmap);

s.h.a.r.k 6. Mai 2011 21:49

AW: Windows.Bitmap in Delphi verwenden
 
@freeway: das kann doch nicht gehen, da Windows.TBitmap ein Typ und keine Referenz auf ein TBitmap ist.

Der Code von oben stimmt eigentlich, also der zum Bild anzeigen. Nun gilt es nur noch sicherzustellen, ob die Daten auch ankommen. Schon mal die Höhe und Breite des Bitmaps auf Werte größer 0 gesetzt?

turboPASCAL 7. Mai 2011 07:09

AW: Windows.Bitmap in Delphi verwenden
 
Sicher das:
Code:
(Bitmap * GetCode())
ein Windows.Bitmap (tagBITMAP) liefert ? Oder bekommt man ein Bitmaphandle ( HBITMAP) ?

EWeiss 7. Mai 2011 08:07

AW: Windows.Bitmap in Delphi verwenden
 
Zitat:

Zitat von turboPASCAL (Beitrag 1099455)
Sicher das:
Code:
(Bitmap * GetCode())
ein Windows.Bitmap (tagBITMAP) liefert ? Oder bekommt man ein Bitmaphandle ( HBITMAP) ?

Ich denke mal HBITMAP wirds sein..
Kann mir nicht vorstellen das die einen zeiger auf einem Bitmap zurückliefern.

gruss


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