Einzelnen Beitrag anzeigen

Benutzerbild von Jonas Shinaniganz
Jonas Shinaniganz

Registriert seit: 30. Aug 2011
249 Beiträge
 
Delphi XE5 Ultimate
 
#5

AW: Firemonkey TIcon

  Alt 11. Mär 2012, 12:34
Hiermit lässt sich ein Icon auslesen und in ein TImage speichern:

Delphi-Quellcode:
// momentane uses
uses
  FMX.Controls, System.Classes, Winapi.ShellApi, WinApi.Windows, Vcl.ExtCtrls;


procedure TBarButton.GetIcon;
var
  InfoData : SHFILEINFO;
begin
  SHGetFileInfo(PChar(FShortCut), 0, InfoData, SizeOf(InfoData), SHGFI_ICON);

  Img := TImage.Create(Self);
  Img.Picture.Icon.Handle := InfoData.hIcon;
end;
Zur Laufzeit bekomme Ich dann folgenden recht netten Fehler:

Zitat:
TImage kann nicht zu TImage zugewiesen werden.

Das lässt sich einfach ergründen:

Image auf der Form ist (Weil FM-HD APP) = FMX.Objects.TImage.

Image aus der anderen Unit aber Vcl.ExtCtrls.

Leider muss ich das TImage aus Vcl.ExtCtrls nehmen weil

das FMX Image keine
Zitat:
.Picture.Icon.Handle
implementation hat....





Idealer wäre jetzt das Vcl.ExtCtrls.TImage so zu Konvertieren, das ein Bitmap oder sonstwas entsteht welches Ich FMX.Objects.TImage zuweise.

Speicherlöcher habe Ich keine momentan, programmiere auch immer mit ReportMemoryLeaksOnShutdown; damit Ichs schnell merke.

Hat jemand eine Idee wie Ich mein Bild elegant übergebe? Ich habe schon einiges versucht...

Geändert von Jonas Shinaniganz (11. Mär 2012 um 12:36 Uhr)
  Mit Zitat antworten Zitat