Delphi XEでリソースの画像を取得する

最近のDelphi/C++Builderには、リソースをプロジェクトに追加・削除する機能があります。

プロジェクトに追加した画像ファイルを読み込む方法を紹介します。

リソースに画像ファイルを追加します。
このとき、画像ファイルを登録した時のリソース識別子を覚えておきます。

登録したビットマップ画像を読み込む時は、TBitmapのLoadFromResourceNameメソッドを使用します。
2番目の引数はリソースの識別子です。

var
  Bitmap: TBitmap;
begin
  Bitmap := TBitmap.Create;
  Bitmap.LoadFromResourceName(HInstance, 'Bitmap_1');

PNG画像を読み込む時は、TPngImageのLoadFromResourceNameメソッドを使用します。

uses pngimage;

var
  PngImage: TPngImage;
begin
  PngImage := TPngImage.Create;
  PngImage.LoadFromResourceName(HInstance, 'PngImage_1');

次のプログラムはリソースからビットマップとPNGを読み込み、Imageコンポーネントに表示します。

var
  Bitmap: TBitmap;
  PngImage: TPngImage;
begin
  Bitmap := TBitmap.Create;
  Bitmap.LoadFromResourceName(HInstance, 'Bitmap_1');
  Image1.Picture.Assign(Bitmap);
  Bitmap.Free;

  PngImage := TPngImage.Create;
  PngImage.LoadFromResourceName(HInstance, 'PngImage_1');
  Image2.Picture.Assign(PngImage);
  PngImage.Free;
end;

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください