喫茶XRAYトップページ

[スレッド全体
]

[13036] TImageList内のPNG画像の取得返信 削除
2019/8/23 (金) 22:58:56 Mr.XRAY
[ PNGファイルをTImageListに入れて、TImageに入れたいのですが ]
https://groups.google.com/forum/#!topic/radstudio-jp/O9jCw8pd0lY

多分ログインしないと見られないと思います.
TImageList に格納した PNG 形式の画像は TImageList.GetIcon を使用すると取り出せます.
TImageList.GetBitmap メソッドはアルファチャンネルを考慮したコードになっていません.

procedure TForm1.Button2Click(Sender: TObject);
var
  LIcon : TIcon;
begin
  Self.Color := $00B3FFB3;

  Image1.Picture.Assign(nil);

  LIcon := TIcon.Create;
  try
    ImageList1.GetIcon(0, LIcon);
    Image1.Picture.Assign(LIcon);
  finally
    FreeAndNil(LIcon);
  end;
end;




[13037] Re:TImageList内のPNG画像の取得返信 削除
2019/8/23 (金) 23:32:54 Mr.XRAY
> TImageList に格納した PNG 形式の画像は TImageList.GetIcon を使用すると取り出せます.

TBitmap --> TIcon は少し面倒ですが.
TBitmap にするには以下で.

  TBitmap.Assign(TIcon)
  TIcon.AssignTo(TBitmap)


[13039] Re2:TImageList内のPNG画像の取得返信 削除
2019/8/24 (土) 23:17:05 Mr.XRAY
> TBitmap にするには以下で.
>
>   TBitmap.Assign(TIcon)
>   TIcon.AssignTo(TBitmap)


大変失礼しました.
上のコードは,アルファチャンネル付きのビットマップとしては正常に変換できません.
なので GDI+ のサンプルも書いているのでした.
昔のことなので忘却の彼方にいっていました.


[▼次のスレッド]
INCM/CMT
Cyclamen v3.82