Delphi XE8でリソースファイルの画像を読み込むには

Delphi XE8でリソースファイルの画像を読み込む方法を紹介します。

リソースファイルの登録

リソースファイルは、メニューの「プロジェクト」→「リソースと画像」から登録します。

01

02

03

リソース識別子とリソースタイプは、読み込むときに必要になるので、覚えておいてください。

リソースファイルの読み込み

リソースファイルを読み込むには、TResourceStreamを使用します。

TResourceStreamのコンストラクタの第二引数にリソース識別子、第三引数にリソースタイプを指定します。

RS := TResourceStream.Create(HInstance, 'PngImage_1', RT_RCDATA);

画像ファイルを読み込むには次のようなコードになります。

var
  RS: TResourceStream;
  Bitmap: TBitmap;
begin
  RS := TResourceStream.Create(HInstance, 'PngImage_1', RT_RCDATA);
  Bitmap:= TBitmap.CreateFromStream(RS);
  RS.Free;

サンプルアプリケーション

次のサンプルコードでは、ボタンを押すとリソースファイルの画像を読み込んで表示します。

フォームにボタンコンポーネント(TButton)とイメージコンポーネント(TImage)を配置します。

08

ボタンのOnClickイベントを記述します。

procedure TForm1.Button1Click(Sender: TObject);
var
  RS: TResourceStream;
  Bitmap: TBitmap;
begin
  RS := TResourceStream.Create(HInstance, 'PngImage_1', RT_RCDATA);
  Bitmap:= TBitmap.CreateFromStream(RS);
  RS.Free;

  Image1.Bitmap.Assign(Bitmap);
  Bitmap.Free;
end;

Androidで実行したところ

04

05

iOSシミュレータで実行したところ

06

07

コメントを残す

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

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