ホーム > デベロッパ > BREW FAQ

BREW FAQ : リソース ファイルからデータを取得するには?

リソース ファイルからデータを取得するには?

リソース ファイルからデータを取得するには、IShell インターフェイスの関数を使用します。

たとえば、ビットマップの取得には ISHELL_LoadResBitmap 関数を使用します。

ISHELL_LoadResBitmap は、以下のように定義されています。

ISHELL_LoadResBitmap(
 shell,     // IShell インターフェイスを指すポインタ
 filename,  // リソース ファイル名
 id         // リソース ID
);

この関数を使用する場合は、リソース ファイル名とリソース ID を指定する必要があります。

リソース ID とは、リソース ファイルからデータを読み込むときに使用する値で、 リソース エディタを使用して開発者が任意に設定できます。

リソース エディタを使用して設定したリソース ID は、 リソース ヘッダーファイルに定義されますので、 ユーザはリソース ヘッダーファイルをインクルードする必要があります。

リソース ファイルからデータを取得するための関数は、次のとおりです。

関数名 [BREW] 関数名 [SophiaFramework] 処理概要
ISHELL_LoadResBitmap SFBShell::LoadResBitmap リソース ファイルからビットマップを取得します。
ISHELL_LoadResData SFBShell::LoadResData リソース ファイルからデータを取得します。
ISHELL_LoadResDataEx SFBShell::LoadResDataEx リソース ファイルからデータを取得し、指定した領域や関数が確保した領域にデータを保存します。
ISHELL_LoadResImage SFBShell::LoadResImage リソース ファイルから画像を取得します。
ISHELL_LoadResObject SFBShell::LoadResObject リソース ファイルからデータを取得し、そのデータを操作するインターフェイスを返します。
ISHELL_LoadResSound SFBShell::LoadResSound リソース ファイルから音声を取得します。
ISHELL_LoadResString SFBShell::LoadResString リソース ファイルから文字列を取得します。

【 コード例 】

[ BREW API のみを使用したコード ]

// リソース ヘッダーファイルをインクルードします。
#include "MyResource_res.h"

IShell*         shell   = app->a.m_pIShell;
IBitmap*        bmp;

// リソース ファイルからビットマップを取得します。
bmp = ISHELL_LoadResBitmap(shell, MYRESOURCE_RES_FILE, IDB_MY_PICTURE);

[ SophiaFramework を使用したコード ]

// リソース ヘッダーファイルをインクルードします。
#include "MyResource_res.h"

SFBShellSmp  shell = SFBShell::GetInstance();
SFBBitmapSmp  bmp;

// リソース ファイルからビットマップを取得します。
bmp = shell->LoadResBitmap(MYRESOURCE_RES_FILE, IDB_MY_PICTURE);