TNB Library
公開メンバ関数 | 全メンバ一覧
IPartsDrawable 構造体abstract

WINDOWパーツ描画インターフェース [詳解]

#include <TnbPartsDrawable.h>

+ IPartsDrawable の継承関係図

公開メンバ関数

virtual bool DrawButtonControl (HDC hdc, LPRECT _lprc, UINT uState) const =0
 [描画] ボタンコントロール描画. [詳解]
 
virtual bool DrawEdge (HDC hdc, LPCRECT lprc, UINT edge, UINT grfFlags) const =0
 [描画] 長方形の辺を描画. [詳解]
 
virtual bool DrawFocusRect (HDC hdc, LPCRECT lpRect) const =0
 [描画] フォーカス枠描画. [詳解]
 
virtual void GetEdgeOffset (POINT &_po) const =0
 [取得] エッジの幅、高さ. [詳解]
 
virtual void GetPushedOffset (POINT &_po) const =0
 [取得] 押下状態のずれ. [詳解]
 
virtual ~IPartsDrawable (void)
 デストラクタ [詳解]
 

詳解

WINDOWパーツ描画インターフェース

ウィンドウのタイトルバー、フレームコントロール、フォーカス枠を書くインターフェースを持ちます。

必要ファイル
TnbPartsDrawable.h
日付
07/10/24 新規作成

TnbPartsDrawable.h37 行目に定義があります。

構築子と解体子

◆ ~IPartsDrawable()

virtual ~IPartsDrawable ( void  )
virtual

デストラクタ

TnbPartsDrawable.h40 行目に定義があります。

関数詳解

◆ DrawButtonControl()

virtual bool DrawButtonControl ( HDC  hdc,
LPRECT  _lprc,
UINT  uState 
) const
pure virtual

[描画] ボタンコントロール描画.

指定されたタイプとスタイルを備える、ボタンコントロールを描画します。

引数
[in]hdcコントロールの描画に使いたいデバイスコンテキストのハンドルを指定します。 NULL を指定すると、実際に描画する大きさを lprc に返します。
[in,out]_lprc長方形の論理座標を保持する 1 個の RECT 構造体へのポインタを指定します。
[in]uStateボタンコントロールの状態を指定します。
以下の値を指定します。
意味
DFCS_BUTTON3STATE 3 ステートボタン(オン、グレイ表示、オフ)
DFCS_BUTTONCHECK チェックボックス
DFCS_BUTTONPUSH プッシュボタン
DFCS_BUTTONRADIO オプションボタン
DFCS_BUTTONRADIOIMAGE オプションボタンのイメージ(正方形とは異なるイメージ)
DFCS_BUTTONRADIOMASK オプションボタンのマスク(正方形とは異なるマスク)
さらに、コントロールの状態を設定するために、次の値の 1 つまたは複数を指定することもできます。
意味
DFCS_CHECKED チェックされているボタンを描画します。
DFCS_FLAT (凸凹の表現のない)平らなデザインのボタンを描画します。
DFCS_HOT ボタンをホットトラッキング表示します(マウスやキーボードの操作に応じて、ボタンを変化させます)。
DFCS_INACTIVE 無効な(淡色表示の)ボタンを描画します。
DFCS_MONO モノクロームの境界を持つボタンを描画します。
DFCS_PUSHED 押された状態のボタンを描画します。
DFCS_FOCUS フォーカスのある状態のボタンを描画します(※WIN32APIではないシンボルです)。
DFCS_TRANSPARENT 背景をそのままにします(透過表現)。
戻り値
true成功。
false失敗。 ::GetLastError() でエラー情報を取得できます。

CStandardPartsDrawer, CThemeStylePartsDrawerで実装されています。

◆ DrawEdge()

virtual bool DrawEdge ( HDC  hdc,
LPCRECT  lprc,
UINT  edge,
UINT  grfFlags 
) const
pure virtual

[描画] 長方形の辺を描画.

引数
hdcデバイスコンテキストのハンドルを指定します。
lprc長方形の論理座標を保持する 1 個の RECT 構造体へのポインタを指定します。
edge辺の内側と外側の描画方法を指定します。内側の境界フラグから 1 つを、外側の境界フラグからもう 1 つを選び、組み合わせて指定します。
grfFlags境界の種類を指定します。
戻り値
true成功。
false失敗。 ::GetLastError() でエラー情報を取得できます。

CStandardPartsDrawerで実装されています。

◆ DrawFocusRect()

virtual bool DrawFocusRect ( HDC  hdc,
LPCRECT  lpRect 
) const
pure virtual

[描画] フォーカス枠描画.

フォーカスが存在することをユーザーに示すために使われる長方形の枠を描画します。

引数
hdcデバイスコンテキストのハンドルを指定します。
lpRect長方形の論理座標を保持する 1 個の RECT 構造体へのポインタを指定します。
戻り値
true成功。
false失敗。 ::GetLastError() でエラー情報を取得できます。

CStandardPartsDrawerで実装されています。

◆ GetEdgeOffset()

virtual void GetEdgeOffset ( POINT &  _po) const
pure virtual

[取得] エッジの幅、高さ.

エッジの幅、高さを返します。

引数
[out]_po幅、高さ

CStandardPartsDrawerで実装されています。

◆ GetPushedOffset()

virtual void GetPushedOffset ( POINT &  _po) const
pure virtual

[取得] 押下状態のずれ.

押下した時に、コントロールの上に表示する内容をずらす方向を得ることが出来ます。

引数
[out]_poずれ

CStandardPartsDrawerで実装されています。