Einzelnen Beitrag anzeigen

Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.464 Beiträge
 
Delphi 12 Athens
 
#4

AW: Procedure Werte

  Alt 25. Jan 2016, 09:34
ReleaseHandle hat dort nichts zu suchen:
Zitat:
ReleaseHandle informiert die TIcon-Instanz, dass sie für die Freigabe des Symbol-Handles nicht mehr zuständig ist.
Ico ist dafür verantwortlich das alte Handle freizugeben, wenn ein neues Handle zugewiesen wird.

Wenn man "Ico" erzeugt, muss man "Ico" auch freigeben und nicht irgendwas anderes z.B. "Ico_1".
Delphi-Quellcode:
procedure Bildauslesen(const ICON: string; IMG: TImage);
var
  Hd: THandle;
  Ico: TIcon;
begin
  Hd := LoadImage(HInstance, ICON, IMAGE_ICON, 0, 0, LR_DEFAULTCOLOR);

  Ico := TIcon.Create;
  try
    Ico.Handle := Hd;
    IMG.Picture.Assign(Ico);
  finally
    Ico.Free;
  end;
end;
  Mit Zitat antworten Zitat