TNB Library
クラス | 公開メンバ関数 | 全メンバ一覧
CDummyWindow クラス

ダミーウィンドウクラス [詳解]

#include <TnbDummyWindow.h>

+ CDummyWindow の継承関係図

クラス

struct  IListener
 ダミーウィンドウクラスのリスナーインターフェース [詳解]
 

公開メンバ関数

 CDummyWindow (void)
 コンストラクタ [詳解]
 
bool Create (CDummyWindow::IListener *I, LPCTSTR lpszTitle=NULL, LPCTSTR lpszClassName=NULL, DWORD dwStyle=WS_OVERLAPPEDWINDOW, HMENU hMenu=NULL, HWND hParent=NULL)
 [操作] ウィンドウの作成. [詳解]
 
bool CreateByTemplate (CDummyWindow::IListener *I, UINT templateId, HWND hParent=NULL)
 [操作] ウィンドウの作成(テンプレート使用). [詳解]
 
void Destroy (void)
 [操作] ウィンドウの破棄. [詳解]
 
HWND GetSafeHwnd (void) const
 [取得] ウィンドウハンドル. [詳解]
 
DWORD GetStyle (void) const
 [取得] スタイル取得. [詳解]
 
DWORD GetStyleEx (void) const
 [取得] 拡張スタイル取得. [詳解]
 
bool IsWindow (void) const
 [確認] ウィンドウの有無. [詳解]
 
bool ModifyStyle (DWORD dwRemove, DWORD dwAdd, UINT nFlags=0)
 [設定] スタイル変更. [詳解]
 
bool ModifyStyleEx (DWORD dwRemove, DWORD dwAdd, UINT nFlags=0)
 [設定] 拡張スタイル変更. [詳解]
 
 operator HWND (void) const
 [取得] ウィンドウハンドル. [詳解]
 
void SetBrush (HBRUSH b)
 [設定] 背景ブラシ設定. [詳解]
 
 ~CDummyWindow (void)
 デストラクタ [詳解]
 

詳解

ダミーウィンドウクラス

簡易的なウィンドウを作成します。 MFC を使用していません。
覚え書き
CUI アプリでメッセージの受信などでウィンドウハンドルが必要な時、本クラスで見えないウィンドウを作成し、 メッセージの受信処理を行うことが出来ます。
必要ファイル
TnbDummyWindow.h
日付
06/06/14 新規作成
09/04/22 マップを CSimpleMap に変更
09/07/22 ブラシ指定可能に変更
10/04/19 作成時、メニューを指定できるようにした。
10/05/10 スタイル関係のメソッド追加。
11/08/31 CreateByTemplate() を追加。
11/09/09 ダイアログ WM_CTLCOLOR〜 系の特殊メッセージに対応。
15/11/20 SELECTANY オブジェクトの破棄の方法を WM_DESTROY 時に移管した。

TnbDummyWindow.h55 行目に定義があります。

構築子と解体子

◆ CDummyWindow()

CDummyWindow ( void  )

コンストラクタ

TnbDummyWindow.h93 行目に定義があります。

◆ ~CDummyWindow()

~CDummyWindow ( void  )

デストラクタ

TnbDummyWindow.h99 行目に定義があります。

関数詳解

◆ Create()

bool Create ( CDummyWindow::IListener I,
LPCTSTR  lpszTitle = NULL,
LPCTSTR  lpszClassName = NULL,
DWORD  dwStyle = WS_OVERLAPPEDWINDOW,
HMENU  hMenu = NULL,
HWND  hParent = NULL 
)

[操作] ウィンドウの作成.

ウィンドウを作成します。

覚え書き
一つのインスタンスで管理できるウィンドウは一つだけです。 複数作成しようとすると、先のウィンドウが破棄されます。
引数
Iリスナー
lpszTitleウィンドウのタイトル。省略可能です。FindWindowなどで、 タイトルが必要な場合指定します。
lpszClassNameウィンドウのクラス名。省略可能です。FindWindowなどで、 クラス名が必要な場合指定します。
dwStyleウィンドウスタイル。省略すると、 WS_OVERLAPPEDWINDOW だけが指定されます。
hMenuメニュー。省略すると NULL が指定されます。
hParent親ウィンドウ。省略すると NULL が指定されます。
戻り値
true成功
false失敗

TnbDummyWindow.h175 行目に定義があります。

◆ CreateByTemplate()

bool CreateByTemplate ( CDummyWindow::IListener I,
UINT  templateId,
HWND  hParent = NULL 
)

[操作] ウィンドウの作成(テンプレート使用).

リソースのテンプレートを使用してウィンドウを作成します。

覚え書き
一つのインスタンスで管理できるウィンドウは一つだけです。 複数作成しようとすると、先のウィンドウが破棄されます。
引数
Iリスナー
templateIdダイアログのリソース点テンプレートIDを指定します。
hParent親ウィンドウ。省略すると NULL が指定されます。
戻り値
true成功
false失敗

TnbDummyWindow.h212 行目に定義があります。

◆ Destroy()

void Destroy ( void  )

[操作] ウィンドウの破棄.

TnbDummyWindow.h137 行目に定義があります。

◆ GetSafeHwnd()

HWND GetSafeHwnd ( void  ) const

[取得] ウィンドウハンドル.

保持しているウィンドウのハンドルを返します。

戻り値
ハンドル

TnbDummyWindow.h119 行目に定義があります。

◆ GetStyle()

DWORD GetStyle ( void  ) const

[取得] スタイル取得.

戻り値
スタイル

TnbDummyWindow.h235 行目に定義があります。

◆ GetStyleEx()

DWORD GetStyleEx ( void  ) const

[取得] 拡張スタイル取得.

戻り値
拡張スタイル

TnbDummyWindow.h244 行目に定義があります。

◆ IsWindow()

bool IsWindow ( void  ) const

[確認] ウィンドウの有無.

戻り値
true有り
falseなし

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

◆ ModifyStyle()

bool ModifyStyle ( DWORD  dwRemove,
DWORD  dwAdd,
UINT  nFlags = 0 
)

[設定] スタイル変更.

引数
dwRemove除去するスタイル
dwAdd追加するスタイル
nFlagsSetWindowPos に渡すフラグ。SetWindowPos を呼び出さないときは 0 です。既定値は 0 です。
戻り値
true成功
false失敗

TnbDummyWindow.h257 行目に定義があります。

◆ ModifyStyleEx()

bool ModifyStyleEx ( DWORD  dwRemove,
DWORD  dwAdd,
UINT  nFlags = 0 
)

[設定] 拡張スタイル変更.

引数
dwRemove除去する拡張スタイル
dwAdd追加する拡張スタイル
nFlagsSetWindowPos に渡すフラグ。SetWindowPos を呼び出さないときは 0 です。既定値は 0 です。
戻り値
true成功
false失敗

TnbDummyWindow.h270 行目に定義があります。

◆ operator HWND()

operator HWND ( void  ) const

[取得] ウィンドウハンドル.

保持しているウィンドウのハンドルを返します。

戻り値
ハンドル

TnbDummyWindow.h109 行目に定義があります。

◆ SetBrush()

void SetBrush ( HBRUSH  b)

[設定] 背景ブラシ設定.

Create() よりも先に指定してください。

覚え書き
CreateByTemplate() を使う場合、本メソッドは意味ありません。
引数
bブラシ

TnbDummyWindow.h154 行目に定義があります。