ホーム > デベロッパ > SophiaFramework > BREW C++ 逆引きコード集

BREW C++ プログラミング : SophiaFramework 逆引き FAQ・コード集

ウィンドウ上に画像を描画するには

ウィンドウ上に画像を描画するには、ウィンドウに描画ハンドラを登録し、
描画ハンドラ内のグラフィック・オブジェクトを使って描画します。

// ウィンドウの定義
class MyWindow : public SFRTitleWindow {
    ...
    MyWindow(Void);

    // 描画ハンドラの宣言
    HANDLER_DECLARE_VOIDRENDER(MyWindow, OnRenderContent)
};

// 描画ハンドラの定義
HANDLER_IMPLEMENT_VOIDRENDER(MyWindow, OnRenderContent, graphics)
{
    // SFBBitmapSmp 型の bitmap に画像が格納されているとする

    // SFXRectangle(0, 0, 100, 100) に画像を描画する
    graphics->BitBlt(SFXRectangle(0, 0, 100, 100), bitmap);

    return;
}

// コンストラクタ
MyWindow::MyWindow(Void) : ...
{
    // ハンドラを登録する(エラー処理は省略)
    RegisterHandler(SREVT_RESPONDER_RENDER, SRP16_RENDER_CONTENT,
                        HANDLER_BEFORE, HANDLER_FUNCTION(OnRenderContent));
    return;
}

graphics インスタンスについては グラフィックインターフェースの取得 を参照