TNB Library
クラス | 公開メンバ関数 | 限定公開メンバ関数 | 全メンバ一覧
CAbstractCustomDraw クラスabstract

カスタム描画抽象コントロール [詳解]

#include <TnbMfcAbstractCustomDraw.h>

+ CAbstractCustomDraw の継承関係図

クラス

struct  TDrawParam
 表示用パラメータ [詳解]
 

公開メンバ関数

 CAbstractCustomDraw (void)
 コンストラクタ [詳解]
 

限定公開メンバ関数

virtual bool HasSubItem (void) const =0
 [確認] サブアイテム概念の有無 [詳解]
 
virtual void OnBeginItemPaint (HDC dc)=0
 [通知] 描画開始. [詳解]
 
virtual void OnCalcItemRect (TDrawParam &_pa, bool isSub)=0
 [確認] アイテムRECT計算 [詳解]
 
BOOL OnChildNotify (UINT message, WPARAM wParam, LPARAM lParam, LRESULT *_pResult)
 [通知] for notifications from parent [詳解]
 
virtual void OnEndItemPaint (HDC dc)=0
 [通知] 描画終了. [詳解]
 
virtual void OnItemPainted (const TDrawParam *pParam)=0
 [通知] アイテム描画終わり. [詳解]
 
virtual LRESULT OnItemPainting (TDrawParam *pParam)=0
 [通知] アイテム描画. [詳解]
 

詳解

カスタム描画抽象コントロール

必要ファイル
TnbMfcAbstractCustomDraw.h
日付
08/09/11 新規作成

TnbMfcAbstractCustomDraw.h29 行目に定義があります。

構築子と解体子

◆ CAbstractCustomDraw()

CAbstractCustomDraw ( void  )

コンストラクタ

TnbMfcAbstractCustomDraw.h204 行目に定義があります。

関数詳解

◆ HasSubItem()

virtual bool HasSubItem ( void  ) const
protectedpure virtual

[確認] サブアイテム概念の有無

戻り値
tureサブアイテムあり。
falseない。

CDrawingTreeCtrlで実装されています。

◆ OnBeginItemPaint()

virtual void OnBeginItemPaint ( HDC  dc)
protectedpure virtual

[通知] 描画開始.

一連の描画の開始を通知します。

覚え書き
dc は以下、 OnItemPainting() OnItemPainted() OnEndItemPaint() と続く一連の描画で共通で 使うデバイスコンテキストです。 OnItemPainting() などでデバイスコンテキストの 状態変更して戻すタイミングがない場合、本メソッドで記憶し、 OnEndItemPaint() で元に戻すようにします。
引数
dcデバイスコンテキスト。

CDrawingTreeCtrlで実装されています。

◆ OnCalcItemRect()

virtual void OnCalcItemRect ( TDrawParam _pa,
bool  isSub 
)
protectedpure virtual

[確認] アイテムRECT計算

覚え書き
_pa.itemNo, _pa.subItemNo などから、 _pa.rect の設定を行ってください。
_pa.state の調整も可能です。
引数
[in,out]_pa描画情報
[in]isSubtrue なら subアイテム用の計算をする。

CDrawingTreeCtrlで実装されています。

◆ OnChildNotify()

BOOL OnChildNotify ( UINT  message,
WPARAM  wParam,
LPARAM  lParam,
LRESULT *  _pResult 
)
protected

[通知] for notifications from parent

覚え書き
宛先(hwndFrom)を確認の上サブクラスの OnChildNotify メソッドからコールしてください。
引数
[in]messageメッセージ
[in]wParamWPARAM
[in]lParamLPARAM
[out]_pResultリザルト
戻り値
TRUE処理済。サブクラスの OnCildNotify クラスはそのまま TRUE でリターンしてください。
FALSE未処理。

TnbMfcAbstractCustomDraw.h129 行目に定義があります。

◆ OnEndItemPaint()

virtual void OnEndItemPaint ( HDC  dc)
protectedpure virtual

[通知] 描画終了.

一連の描画の終了を通知します。

参照
OnBeginItemPaint()
引数
dcデバイスコンテキスト。

CDrawingTreeCtrlで実装されています。

◆ OnItemPainted()

virtual void OnItemPainted ( const TDrawParam pParam)
protectedpure virtual

[通知] アイテム描画終わり.

覚え書き
サブアイテム描画が終わったあと、アイテム毎に通知されます。
引数
[in]pParam描画用情報。 rect は、サブアイテムも含む範囲。

CDrawingTreeCtrlで実装されています。

◆ OnItemPainting()

virtual LRESULT OnItemPainting ( TDrawParam pParam)
protectedpure virtual

[通知] アイテム描画.

覚え書き
サブアイテム毎に通知されます。
引数
[in,out]pParam描画用情報。範囲やアイテムNOが入っています。
戻り値
CDRF_NOTIFYITEMDRAW通常の描画を行う(本メソッドでは何もしていない)。
CDRF_NEWFONTフォントや文字色を変更した時返します。
CDRF_SKIPDEFAULT本メソッドで描画ずみ。

CDrawingTreeCtrlで実装されています。