BREW Cartoon アプリ 〜 BREW C++ / GUI プログラミング 〜
ビットマップ画像の描画
リソースファイル
画像のリソースファイルを作成します。
画像の読み込み
画像を読み込んで、ポインタを返す関数です。
// 画像番号に対応するビットマップをリソースからロードして返す。
// index は画像の番号(1〜4)
SFBBitmapSmp Cartoon::LoadBitmap(SIntN index)
{
if (1 <= index && index <= 4) {
SFBShellSmp shell = SFBShell::GetInstance();
// 画像を読み込み、ポインタを返す。
return shell->LoadResBitmap(CARTOON_RES_FILE, IDR_PICT1 + index - 1);
}
else {
return SFBBitmapSmp(NULL);
}
}
この関数の使い方は以下の通りです。
// メンバ変数の宣言
class Cartoon : public SFRApplication {
// 表示するビットマップを保持
SFBBitmapSmp m_bitmap;
...
}
// キーハンドラ
HANDLER_IMPLEMENT_BOOLEVENT(Cartoon, OnKey, event)
{
...
m_bitmap = LoadBitmap(m_pict_index); // ビットマップをロード
...
}
ビットマップ画像の表示
読み込んだビットマップは SFXGraphics::DrawBitmap 関数で表示します。
// 描画ハンドラ
HANDLER_IMPLEMENT_VOIDRENDER(Cartoon, OnRenderContent, graphics) {
...
// SFXGrid は座標を表すシェイプクラス
graphics->DrawBitmap(m_bitmap, SFXGrid(10, 10));
...
}
補足:リソースファイル
リソースファイルとは、プログラム内で使用する画像や文字列(リソース)を納めたファイルです。
リソースエディタの使い方
リソースを扱うには BREW SDK に付属している「BREW リソースエディタ」を使用します。
// cartoon.brh #ifndef CARTOON_BRH #define CARTOON_BRH // WARNING: DO NOT MODIFY THIS FILE // AUTO-GENERATED BY BREW Resource Editor #define CARTOON_RES_FILE "cartoon.bar" #define IDI_PICT1 5001 #define IDI_PICT2 5002 #define IDI_PICT3 5003 #define IDI_PICT4 5004 #endif // CARTOON_BRH






















