CDoubleBufferImpl

http://toshi.my.land.to/wtl/reference/?CDoubleBufferImpl
* トップ ページ - WTL - リファレンス - CDoubleBufferImpl :: 説明 / 解説 / 参照 / 情報 / メソッド / イベント ハンドラ

説明

ウィンドウに対するダブルバッファリングによる描画を実装するクラスです。

解説

このクラスを利用する際は、テンプレート引数に派生クラス自身を渡して継承し、このクラスに必要なメッセージを処理させるために、CHAIN_MSG_MAP マクロによってこのクラスのメッセージ マップをチェインします。
通常は、この実装がすでに行われている CDoubleBufferWindowImpl クラスを利用します。

派生クラスは、このクラスの DoPaint メソッドを必ずオーバーライドし、そこでデバイス コンテキストに対して描画しなければなりません。
そのデバイス コンテキストは、ウィンドウのものではなくメモリ デバイス コンテキストであり、このクラスがその内容をウィンドウのデバイス コンテキストへコピーすることによって、ダブルバッファリングを行います。

参照

CDoubleBufferWindowImpl
CMemoryDC

情報

タイプ : テンプレート
継承クラス : なし
ヘッダ : atlframe.h

メソッド

DoPaint
ウィンドウへ描画します。

イベント ハンドラ

OnEraseBackground
WM_ERASEBKGND メッセージのハンドラです。
OnPaint
WM_PAINT / WM_PRINTCLIENT メッセージのハンドラです。


DoPaint

ウィンドウへ描画します。

void DoPaint(CDCHandle /*dc*/);

引数

CDCHandle /*dc*/
デバイス コンテキストを指定します。このメソッドでは使用されません。

戻り値

戻り値はありません。

解説

このメソッドが呼び出されると、オーバーライドされていないことを示すために、ATLASSERT マクロによってアサートを発生させます。


OnEraseBackground

WM_ERASEBKGND メッセージのハンドラです。

LRESULT OnEraseBackground(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& bHandled);

引数

UINT /*uMsg*/
WM_ERASEBKGND メッセージです。

WPARAM /*wParam*/
メッセージに付加されたパラメータです。このハンドラでは使用されません。

LPARAM lParam
メッセージに付加されたパラメータです。このハンドラでは使用されません。

BOOL& bHandled
メッセージを処理したかどうかを示します。このハンドラでは使用されません。

戻り値

常に 1 を返します。

解説

このハンドラは、背景の描画が必要ないことを示すために 1 を返します。


OnPaint

WM_PAINT / WM_PRINTCLIENT メッセージのハンドラです。

LRESULT OnPaint(UINT /*uMsg*/, WPARAM /*wParam*/, LPARAM lParam, BOOL& bHandled);

引数

UINT /*uMsg*/
WM_PAINT / WM_PRINTCLIENT メッセージです。

WPARAM /*wParam*/
メッセージに付加されたパラメータです。

LPARAM lParam
メッセージに付加されたパラメータです。このハンドラでは使用されません。

BOOL& bHandled
メッセージを処理したかどうかを示します。このハンドラでは使用されません。

戻り値

常に 0 を返します。

解説

このハンドラは、CMemoryDC クラスからメモリ デバイス コンテキストを作成し、DoPaint メソッドを呼び出します。


Last Modified : 2010/03/13 (Sat.) 23:05:55

Librarian Version 0.3.1.5
By Toshi

ページの先頭へ戻る
リファレンスへ戻る
WTL へ戻る
トップ ページへ戻る

* トップ ページ - WTL - リファレンス - CDoubleBufferImpl :: 説明 / 解説 / 参照 / 情報 / メソッド / イベント ハンドラ
http://toshi.my.land.to/wtl/reference/?CDoubleBufferImpl
(C) 2005 - 2010 Toshi, All Rights Reserved.