WIL説明書(C++)  3.0.0
全メンバ一覧 | クラス | 公開メンバ関数 | 限定公開変数類

矩形領域描画クラス [詳解]

詳解

矩形領域描画クラス

FVCL::Data::CFvRectangle を図形として描画するクラスです。
描画された図形はマウス操作により変更する事が可能です。

必要条件:
ヘッダー: EVCbasic.h
表示イメージ
CEvDrawRectArea.png
解説:
通常は、画像オブジェクトの処理範囲をマウス操作で変更する為に使用します。 画像オブジェクトの処理範囲を FVCL::Data::CFvImage::GetWindow で得て、 このクラスの Draw 関数に渡すと、処理範囲が表示されます。
マウスによる処理範囲の変更は、下記の関数で行います。
  • MouseGrip
  • MouseMove
  • MouseRelease

マウスが処理範囲上に有るか否かを判定するには、下記の関数を使用します。
  • CheckMousePosition

オーバレイの設定:
伸縮属性 false FVCL::GDI::CFvOverlay::SetScaling
伸縮モード 未使用 FVCL::GDI::CFvOverlay::SetScalingMode
初期値:
メンバ変数は以下のように初期化されます。 描画される各図形のハンドルは NULL 初期化されます。
メンバ変数 初期値 内容
m_colFrame RGB( 0x7F, 0x7F, 0xFF ) 枠線の色
m_penFrame PS_SOLID, 0, m_colFrame 枠線のペン
m_colText RGB( 0xFF, 0x00, 0x00 ) テキストの色
m_font.lfHeight 14 文字の高さ
m_font.lfWidth 6 平均文字幅
m_font.lfFaceName "Terminal" フォント名称
m_bText true テキストの可視属性
+ CEvDrawRectArea の継承関係図

クラス

struct  tagGRIP_STATUS
 マウスによる捕獲情報 [詳解]
 

公開メンバ関数

 CEvDrawRectArea ()
 コンストラクタ [詳解]
 
virtual ~CEvDrawRectArea ()
 デストラクタ [詳解]
 
virtual bool Create (FVCL::GDI::CFvDisplay &display, FVCL::GDI::CFvOverlay &overlay)
 生成 [詳解]
 
virtual void Clear ()
 破棄 [詳解]
 
virtual bool Draw (const FVCL::Data::CFvRectangle &area)
 描画実行 [詳解]
 
virtual INT CheckMousePosition (const CPoint &mouse)
 マウス位置の確認 [詳解]
 
virtual bool MouseGrip (const CPoint &mouse)
 マウスによる捕獲 [詳解]
 
virtual bool MouseMove (const CPoint &mouse, FVCL::Data::CFvRectangle *area)
 マウスの移動 [詳解]
 
virtual bool MouseRelease (const CPoint &mouse, FVCL::Data::CFvRectangle *area)
 マウスの開放 [詳解]
 
bool SetFrameColor (COLORREF color)
 矩形枠色の設定 [詳解]
 
COLORREF GetFrameColor () const
 矩形枠色の取得 [詳解]
 
bool SetTextColor (COLORREF color)
 テキスト色の設定 [詳解]
 
COLORREF GetTextColor () const
 テキスト色の取得 [詳解]
 
bool SetFont (const FVCL::GDI::CFvGdiFont &font)
 テキストフォントの設定 [詳解]
 
const FVCL::GDI::CFvGdiFontGetFont () const
 テキストフォントの取得 [詳解]
 
bool SetTextEnable (bool enable)
 テキストの可視属性の設定 [詳解]
 
bool GetTextEnable () const
 テキストの可視属性の取得 [詳解]
 
- 基底クラス CEvDraw に属する継承公開メンバ関数
 CEvDraw ()
 コンストラクタ [詳解]
 
virtual ~CEvDraw ()
 デストラクタ [詳解]
 
virtual void Destroy ()
 破棄 [詳解]
 
virtual bool IsCreate () const
 生成状況の確認 [詳解]
 
bool SetBrightness (UINT brightness)
 図形の明るさの設定 [詳解]
 
UINT GetBrightness () const
 図形の明るさの取得 [詳解]
 
bool SetDisplay (FVCL::GDI::CFvDisplay &display)
 表示クラスの設定 [詳解]
 
FVCL::GDI::CFvDisplayGetDisplay () const
 表示クラスの取得 [詳解]
 
bool SetOverlay (FVCL::GDI::CFvOverlay &overlay)
 オーバレイクラスの設定 [詳解]
 
FVCL::GDI::CFvOverlayGetOverlay () const
 オーバレイクラスの取得 [詳解]
 
- 基底クラス FVCL::CFvObject に属する継承公開メンバ関数
 CFvObject ()
 標準のコンストラクタ [詳解]
 
virtual ~CFvObject ()
 デストラクタ [詳解]
 
INT SetErrorCode (INT err)
 エラーコードの設定 [詳解]
 
INT SetErrorCode (INT err) const
 エラーコードの設定 [詳解]
 
INT GetErrorCode () const
 エラーコードの取得 [詳解]
 
bool SetAllocateOption (INT value)
 画像領域確保時のオプションの設定 [詳解]
 
INT GetAllocateOption () const
 画像領域確保時のオプションの取得 [詳解]
 
void * operator new (size_t uiSize)
 new オペレータ [詳解]
 
void * operator new[] (size_t uiSize)
 new[] オペレータ [詳解]
 
void operator delete (void *pvObject)
 delete オペレータ [詳解]
 
void operator delete[] (void *pvObject)
 delete[] オペレータ [詳解]
 
void * operator new (size_t uiSize, LPCSTR szFileName, INT iLine)
 new オペレータ [詳解]
 
void * operator new[] (size_t uiSize, LPCSTR szFileName, INT iLine)
 new[] オペレータ [詳解]
 
void operator delete (void *pvObject, LPCSTR szFileName, INT iLine)
 delete オペレータ [詳解]
 
void operator delete[] (void *pvObject, LPCSTR szFileName, INT iLine)
 delete[] オペレータ [詳解]
 
virtual CFvObjectoperator= (const CFvObject &src)
 代入オペレータ [詳解]
 
virtual bool operator== (const CFvObject &src) const
 比較オペレータ (==) [詳解]
 
virtual bool operator!= (const CFvObject &src) const
 比較オペレータ (!=) [詳解]
 

限定公開変数類

CSize m_ImageSize
 画像サイズ [詳解]
 
tagGRIP_STATUS m_GripStatus
 マウスによる捕獲情報 [詳解]
 
COLORREF m_colFrame
 枠線の色 [詳解]
 
COLORREF m_colText
 テキストの色 [詳解]
 
FVCL::GDI::CFvGdiPen m_penFrame
 枠線のペン [詳解]
 
FVCL::GDI::CFvGdiFont m_font
 テキストのフォント [詳解]
 
bool m_bText
 テキストの有効/無効 [詳解]
 
FVCL::Data::CFvRectangle m_frame
 矩形データ [詳解]
 
FVCL::GDI::CFvGdiRectanglem_pFrame
 枠線の図形ハンドル [詳解]
 
FVCL::GDI::CFvGdiStringm_pText
 テキストの図形ハンドル [詳解]
 
FVCL::GDI::CFvGdiImagem_pImage
 枠内塗り潰し画像の図形ハンドル [詳解]
 
- 基底クラス CEvDraw に属する継承限定公開変数類
FVCL::GDI::CFvDisplaym_display
 描画クラス [詳解]
 
FVCL::GDI::CFvOverlaym_overlay
 オーバレイ [詳解]
 
UINT m_brightness
 明るさ [詳解]
 
- 基底クラス FVCL::CFvObject に属する継承限定公開変数類
INT m_ErrorCode
 エラーコード [詳解]
 
INT m_AllocateOption
 画像領域確保時のオプション [詳解]
 

その他の継承メンバ

- 基底クラス FVCL::CFvObject に属する継承静的公開メンバ関数
static bool SetDefaultAllocateOption (INT value)
 既定の画像領域確保時のオプションの設定 [詳解]
 
static INT GetDefaultAllocateOption ()
 既定の画像領域確保時のオプションの取得 [詳解]
 
- 基底クラス CEvDraw に属する継承限定公開メンバ関数
COLORREF GetBrightColor (COLORREF color, bool reverse=false) const
 明るさを考慮した描画色の取得 [詳解]
 
- 基底クラス FVCL::CFvObject に属する継承限定公開メンバ関数
INT fnCPUCheck ()
 CPU情報の取得 [詳解]
 

構築子と解体子

CEvDrawRectArea::CEvDrawRectArea ( )

コンストラクタ

クラスのオブジェクトが生成された時の初期化処理を行います。

CEvDrawRectArea::~CEvDrawRectArea ( )
virtual

デストラクタ

クラスのオブジェクトが破棄された時の開放処理を行います。

関数詳解

bool CEvDrawRectArea::Create ( FVCL::GDI::CFvDisplay display,
FVCL::GDI::CFvOverlay overlay 
)
virtual

生成

FVCL::GDI::CFvDisplay クラスのオブジェクトと描画先のオーバレイを このクラスに設定して、描画処理を実行可能にします。

引数
[in]display描画クラス
[in]overlay描画先のオーバレイ
戻り値
true正常
false異常
解説:
親クラスの生成処理(CEvDraw::Create)を実行して描画処理を可能にします。 また、引数 overlay の 伸縮属性は false (伸縮しない) に設定されます。
参照
FVCL::GDI::CFvOverlay::SetScaling

CEvDrawを再実装しています。

void CEvDrawRectArea::Clear ( )
virtual

破棄

オーバレイ上の図形を消去し、このクラス内に保有する図形ハンドルをリセットします。 再度、 Draw 関数を呼び出すと描画されます。

CEvDrawを再実装しています。

bool CEvDrawRectArea::Draw ( const FVCL::Data::CFvRectangle area)
virtual

描画実行

このクラス固有の描画処理を実行します。

引数
[in]area矩形領域
戻り値
true正常
false異常
INT CEvDrawRectArea::CheckMousePosition ( const CPoint &  mouse)
virtual

マウス位置の確認

マウスポインタの座標が矩形領域内のどの位置にあるか確認します。

引数
[in]mouseマウスポインタの座標(表示領域座標)
戻り値
マウスの位置情報を返します。
FVCL::GDI::RectPosition の論理和で返します。
bool CEvDrawRectArea::MouseGrip ( const CPoint &  mouse)
virtual

マウスによる捕獲

矩形領域をマウスによって捕獲します。 捕獲した矩形領域とマウス座標はマウスを開放するまで記憶されます。 また、捕獲中にこの関数を呼び出すと、再捕獲(前回の捕獲情報は上書き)されます。

引数
[in]mouseマウスポインタの座標(表示領域座標)
戻り値
true正常
false異常(捕獲不可)
参照
CEvDrawRectArea::MouseMove
CEvDrawRectArea::MouseRelease
bool CEvDrawRectArea::MouseMove ( const CPoint &  mouse,
FVCL::Data::CFvRectangle area 
)
virtual

マウスの移動

マウスの移動量を計算し、捕獲した矩形領域を移動またはサイズ変更します。 移動するかサイズ変更するかは、捕獲時の状態によって異なります。 移動やサイズ変更の情報が不要な場合は、 area にNULLを指定して省略する事ができます。

引数
[in]mouseマウスポインタの座標(表示領域座標)
[out]area移動またはサイズ変更後の矩形領域(画像座標)
戻り値
true正常
false異常 または 捕獲中でない
参照
CEvDrawRectArea::MouseGrip
CEvDrawRectArea::MouseRelease
bool CEvDrawRectArea::MouseRelease ( const CPoint &  mouse,
FVCL::Data::CFvRectangle area 
)
virtual

マウスの開放

マウスによる捕獲を終了します。 また、マウスの移動量を計算し、捕獲した矩形領域を移動またはサイズ変更します。 移動するかサイズ変更するかは、捕獲時の状態によって異なります。
移動やサイズ変更の情報が不要な場合は、 area にNULLを指定して省略する事ができます。

引数
[in]mouseマウスポインタの座標(表示領域座標)
[out]area移動またはサイズ変更後の矩形領域(画像座標)
戻り値
true正常
false異常 または 捕獲中でない
参照
CEvDrawRectArea::MouseGrip
CEvDrawRectArea::MouseMove
bool CEvDrawRectArea::SetFrameColor ( COLORREF  color)

矩形枠色の設定

矩形の縁と内部の塗り潰し色を設定します。

引数
[in]colorRGBカラー
戻り値
true正常
false異常
解説:
矩形内部の塗り潰しは、 color に設定された色を半透明で表示します。 透明度は 0x3F です。透明度をユーザが変更する事はできません。
参照
FVCL::GDI::CFvGdiImage::SetAlpha ... 画像の透明度の設定
COLORREF CEvDrawRectArea::GetFrameColor ( ) const

矩形枠色の取得

矩形の縁と内部の塗り潰し色を取得します。

戻り値
枠線の色を返します。
bool CEvDrawRectArea::SetTextColor ( COLORREF  color)

テキスト色の設定

矩形の始点とサイズを表すテキストの表示色を設定します。

引数
[in]colorRGBカラー
戻り値
true正常
false異常
COLORREF CEvDrawRectArea::GetTextColor ( ) const

テキスト色の取得

矩形の始点とサイズを表すテキストの表示色を取得します。

戻り値
テキストの色を返します。
bool CEvDrawRectArea::SetFont ( const FVCL::GDI::CFvGdiFont font)

テキストフォントの設定

矩形の始点とサイズを表すテキストのフォント情報を設定します。

引数
[in]fontフォント
戻り値
true正常
false異常
const FVCL::GDI::CFvGdiFont & CEvDrawRectArea::GetFont ( ) const

テキストフォントの取得

矩形の始点とサイズを表すテキストのフォント情報を取得します。

戻り値
テキストのフォントを返します。
bool CEvDrawRectArea::SetTextEnable ( bool  enable)

テキストの可視属性の設定

矩形の始点とサイズを表すテキストの表示属性を設定します。

引数
[in]enable可視属性
  • true: 可視
  • false: 非可視

戻り値
true正常
false異常
解説:
ここで設定された可視属性は、このクラスのメンバ変数に保管されます。 テキストの可視属性は、次回の描画時(Draw 実行時)に反映されます。
bool CEvDrawRectArea::GetTextEnable ( ) const

テキストの可視属性の取得

矩形の始点とサイズを表すテキストの表示属性を取得します。

戻り値
テキストの可視属性を返します。

メンバ詳解

CSize CEvDrawRectArea::m_ImageSize
protected

画像サイズ

tagGRIP_STATUS CEvDrawRectArea::m_GripStatus
protected

マウスによる捕獲情報

COLORREF CEvDrawRectArea::m_colFrame
protected

枠線の色

矩形の枠線の色を保持します。

COLORREF CEvDrawRectArea::m_colText
protected

テキストの色

矩形の始点とサイズを表すテキストの色を保持します。

FVCL::CFvGdiPen CEvDrawRectArea::m_penFrame
protected

枠線のペン

矩形の枠線のペン情報を保持します。

FVCL::CFvGdiFont CEvDrawRectArea::m_font
protected

テキストのフォント

矩形の始点とサイズを表すテキストのフォント情報を保持します。

bool CEvDrawRectArea::m_bText
protected

テキストの有効/無効

矩形の始点とサイズを表すテキストの表示属性を保持します。

FVCL::CFvRectangle CEvDrawRectArea::m_frame
protected

矩形データ

矩形データを画像座標で保持します。

FVCL::CFvGdiRectangle * CEvDrawRectArea::m_pFrame
protected

枠線の図形ハンドル

オーバレイに描画されている矩形の枠線の図形ハンドルを保持します。

FVCL::CFvGdiString * CEvDrawRectArea::m_pText
protected

テキストの図形ハンドル

オーバレイに描画されているテキストの図形ハンドルを保持します。

FVCL::CFvGdiRectangle * CEvDrawRectArea::m_pImage
protected

枠内塗り潰し画像の図形ハンドル

オーバレイに描画されている枠内塗り潰し画像の図形ハンドルを保持します。
塗り潰し色は、枠線の色(m_colFrame)を 透明度 0x3f でアルファブレンドしたものになります。 透明度の調整は出来ません。


Documentation copyright © 2007 FAST Corporation. [B-001864]
Generated on 2023年11月02日(木) 10時12分57秒 for WIL説明書(C++) by doxygen 1.8.11