Thema: Delphi HBITMAP nach TBitmap

Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#11

AW: HBITMAP nach TBitmap

  Alt 4. Jun 2018, 22:33
Zitat:
DeleteObject(das_HBitmap_Result);
// ....das Handle freigeben, Richtig?
Nein denn dann siehst du nichts mehr das Handle ist dann ungültig.
Du darfst es nicht löschen.

Nach der Übergabe bist du nicht mehr der Eigentümer des Handles es muss dann vom Object freigegeben werden welches es erhalten hat.

Delphi-Quellcode:
var
  myBitmap: TBitmap;

    myBitmap:= TBitmap.Create; // <- das ist in FormCreate, nur damit man es hier sieht, ein Free ist im FormClose

function x : hbitmap;
  begin
    result := ein_HBitmap;
    // DeleteObject(ein_HBitmap) // <<<<< nix löschen
  end;

procedure y;
begin
  myBitmap.Handle := x; // <<<<<< canvas.handle war falsch das ist das DC..
  // <<<< ab hier ist myBitmap gefüllt und du darfst das Handle nicht löschen
end;

gruss

Geändert von EWeiss ( 4. Jun 2018 um 22:40 Uhr)
  Mit Zitat antworten Zitat