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

描画情報ListBoxコントロール [詳解]

#include <TnbMfcDrawingListBox.h>

+ CDrawingListBox の継承関係図

公開型

enum  ESelectMarkType { BACKGROUND , OVERLAP }
 セレクトマークタイプ [詳解]
 

公開メンバ関数

int AddDrawing (const IDrawable &draw)
 [追加] 描画情報一行追加. [詳解]
 
void AdditionRelatedHwnd (HWND hWnd)
 [追加] 関連Windowハンドル追加 [詳解]
 
int AddString (LPCTSTR lpszItem)
 [追加] 文字列一行追加. [詳解]
 
 CDrawingListBox (void)
 コンストラクタ [詳解]
 
int DeleteDrawing (UINT index)
 [削除] 一行削除. [詳解]
 
int DeleteString (UINT index)
 [削除] 一行削除. [詳解]
 
const IDrawableGetDrawing (int index) const
 [取得] 描画情報取得. [詳解]
 
DWORD GetExStyle (void) const
 [取得] ウィンドウ拡張スタイル取得. [詳解]
 
HWND GetSafeHwnd (void) const
 [取得] ウィンドウハンドル取得. [詳解]
 
DWORD GetStyle (void) const
 [取得] ウィンドウスタイル取得. [詳解]
 
int InsertDrawing (int index, const IDrawable &draw)
 [追加] 描画情報一行挿入. [詳解]
 
int InsertString (int index, LPCTSTR lpszItem)
 [追加] 文字列一行挿入. [詳解]
 
BOOL ModifyStyle (DWORD dwRemove, DWORD dwAdd, UINT nFlags=0)
 [設定] ウィンドウスタイル変更. [詳解]
 
BOOL ModifyStyleEx (DWORD dwRemove, DWORD dwAdd, UINT nFlags=0)
 [設定] ウィンドウ拡張スタイル変更. [詳解]
 
void PostMessageToRelatedHwnd (UINT message, WPARAM wParam=0, LPARAM lParam=0)
 [処理] 関連Windowハンドルへポスト [詳解]
 
void ResetContent (void)
 [削除] 全描画情報削除. [詳解]
 
int ResetDrawing (int index, const IDrawable &draw)
 [追加] 描画情報変更. [詳解]
 
void SetBackColor (COLORREF color)
 [設定] 背景色設定. [詳解]
 
bool SetBackgroundDrawer (const IDrawable &draw)
 [設定] 背景描画指定. [詳解]
 
void SetDefaultMarkDrawer (COLORREF base=::GetSysColor(COLOR_WINDOW))
 [設定] デフォルトのマーク描画指定. [詳解]
 
bool SetDisabledStyleDrawer (const IDrawable &draw)
 [設定] 無効状態描画指定. [詳解]
 
bool SetFocusMarkDrawer (const IDrawable &draw)
 [設定] フォーカスマーク描画指定. [詳解]
 
bool SetSelectMarkDrawer (const IDrawable &draw, ESelectMarkType type=OVERLAP)
 [設定] 選択マーク描画指定. [詳解]
 
bool SetSelectMarkDrawer (const IDrawable &draw1, const IDrawable &draw2, ESelectMarkType type=OVERLAP)
 [設定] 選択マーク描画指定. [詳解]
 
void SetTextDrawer (const CTextDrawer &text)
 [設定] テキスト描画情報指定 [詳解]
 
BOOL SetWindowPos (const CWnd *pWndInsertAfter, int x, int y, int cx, int cy, UINT nFlags)
 [設定] ウィンドウサイズポジション設定. [詳解]
 
BOOL ShowWindow (int nCmdShow)
 [設定] ウィンドウ表示状態. [詳解]
 
 ~CDrawingListBox (void)
 デストラクタ [詳解]
 

限定公開メンバ関数

void AllReset (void)
 [設定] 全設定リセット. [詳解]
 
void BeginItemPaint (void)
 [処理] 描画開始. [詳解]
 
virtual LPARAM CalcDrawParam (DWORD_PTR itemNo) const
 [取得] 描画用パラメータ計算. [詳解]
 
void DrawBackColor (HDC dc, const RECT &rect)
 [描画] 背景色描画 [詳解]
 
void DrawBackground (HDC dc, const RECT &rect, LPARAM lParam=0)
 [描画] 背景表示 [詳解]
 
void DrawDisabledStyle (HDC dc, const RECT &rect, LPARAM lParam=0)
 [描画] 無効状態描画. [詳解]
 
void DrawFocusMark (HDC dc, const RECT &rect, LPARAM lParam=0)
 [描画] フォーカスマーク表示 [詳解]
 
virtual void DrawItem (LPDRAWITEMSTRUCT lpDrawItemStruct)
 [通知] オーナードロー処理. [詳解]
 
void DrawSelectMark (HDC dc, const RECT &rect, bool isActive, LPARAM lParam=0)
 [描画] 選択マーク表示 [詳解]
 
void DrawText (HDC dc, const RECT &rect, LPCTSTR lpsz, DWORD drawStyle, LPARAM lParam=0)
 [描画] 文字列描画 [詳解]
 
void DrawText (HDC dc, const RECT &rect, LPCTSTR lpsz, LPARAM lParam=0)
 [描画] 文字列描画 [詳解]
 
bool EndItemPaint (void)
 [処理] 描画終了. [詳解]
 
COLORREF GetBackColor (void) const
 [取得] 背景色取得. [詳解]
 
ESelectMarkType GetSelectMarkType (void) const
 [取得] セレクトマークタイプ [詳解]
 
DWORD GetTextDrawStyle (void) const
 [取得] 文字列描画スタイル取得. [詳解]
 
virtual void MeasureItem (LPMEASUREITEMSTRUCT lpMeasureItemStruct)
 オーナードロー時. [詳解]
 
virtual void PreSubclassWindow (void)
 [通知] subclassing/unsubclassing functions. [詳解]
 
void SetDefaultTextDrawer (CWnd *pWnd)
 [設定] テキスト描画情報設定. [詳解]
 
virtual LRESULT WindowProc (UINT message, WPARAM wParam, LPARAM lParam)
 [通知] for processing Windows messages. [詳解]
 

詳解

描画情報ListBoxコントロール

行単位で表示する描画情報を指定出来ます。
使い方
リソースエディタでリストボックスコントロールを張り、コントロール変数に割り当て後、 そのコントロール変数の型(CListBox)を本クラスに置き換えて使用します。
リストボックスのプロパティの「オーナー描画(O)」を「可変」にしておいてください。
必要ファイル
TnbMfcDrawingListBox.h
日付
07/12/07 新規作成
10/01/07 Destroy時のマーク関係の初期化漏れ修正。
10/04/26 構成変更
11/08/03 描画時、 IDrawable::DrawEx() を使うように変更。 CalcDrawParam() 追加。

TnbMfcDrawingListBox.h43 行目に定義があります。

列挙型メンバ詳解

◆ ESelectMarkType

enum ESelectMarkType
inherited

セレクトマークタイプ

列挙値
BACKGROUND 

背景に描画

OVERLAP 

アイテム描画上に描画

TnbMfcAbstractDrawingCtrl.h43 行目に定義があります。

構築子と解体子

◆ CDrawingListBox()

CDrawingListBox ( void  )

コンストラクタ

TnbMfcDrawingListBox.h50 行目に定義があります。

◆ ~CDrawingListBox()

~CDrawingListBox ( void  )

デストラクタ

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

関数詳解

◆ AddDrawing()

int AddDrawing ( const IDrawable draw)

[追加] 描画情報一行追加.

覚え書き
一行追加します。
引数
draw描画情報
戻り値
LB_ERRエラー。
0以上追加したインデックス

TnbMfcDrawingListBox.h82 行目に定義があります。

◆ AdditionRelatedHwnd()

void AdditionRelatedHwnd ( HWND  hWnd)
inherited

[追加] 関連Windowハンドル追加

覚え書き
コントロールと関連するWindowハンドルを登録しておくことで、表示非表示をサポートできます。
引数
hWndウィンドウハンドル

TnbMfcAbstractDrawingCtrl.h182 行目に定義があります。

◆ AddString()

int AddString ( LPCTSTR  lpszItem)

[追加] 文字列一行追加.

覚え書き
一行追加します。
引数
lpszItem文字列
戻り値
LB_ERRエラー。
0以上追加したインデックス

TnbMfcDrawingListBox.h102 行目に定義があります。

◆ AllReset()

void AllReset ( void  )
protectedinherited

[設定] 全設定リセット.

Set系メソッドで設定した内容を全部破棄します。

TnbMfcAbstractDrawingCtrl.h419 行目に定義があります。

◆ BeginItemPaint()

void BeginItemPaint ( void  )
protectedinherited

[処理] 描画開始.

覚え書き
一連の描画の最初にコールします。

TnbMfcAbstractDrawingCtrl.h370 行目に定義があります。

◆ CalcDrawParam()

virtual LPARAM CalcDrawParam ( DWORD_PTR  itemNo) const
protectedvirtual

[取得] 描画用パラメータ計算.

描画情報の IDrawable::DrawEx() の lParam に渡す値を計算します。

覚え書き
本メソッドでは、 itemNo を lParam としてます。
引数
itemNoアイテム No.
戻り値
パラメータ.

TnbMfcDrawingListBox.h203 行目に定義があります。

◆ DeleteDrawing()

int DeleteDrawing ( UINT  index)

[削除] 一行削除.

引数
index削除する位置
戻り値
LB_ERRエラー。
0以上成功。数字は残りの数。

TnbMfcDrawingListBox.h160 行目に定義があります。

◆ DeleteString()

int DeleteString ( UINT  index)

[削除] 一行削除.

引数
index削除する位置
戻り値
LB_ERRエラー。
0以上成功。数字は残りの数。

TnbMfcDrawingListBox.h176 行目に定義があります。

◆ DrawBackColor()

void DrawBackColor ( HDC  dc,
const RECT &  rect 
)
protectedinherited

[描画] 背景色描画

引数
dcデバイスコンテキスト。
rect表示位置。

TnbMfcAbstractDrawingCtrl.h289 行目に定義があります。

◆ DrawBackground()

void DrawBackground ( HDC  dc,
const RECT &  rect,
LPARAM  lParam = 0 
)
protectedinherited

[描画] 背景表示

引数
dcデバイスコンテキスト。
rect表示位置。
lParamIDrawable::DrawEx() の LPARAM の値

TnbMfcAbstractDrawingCtrl.h256 行目に定義があります。

◆ DrawDisabledStyle()

void DrawDisabledStyle ( HDC  dc,
const RECT &  rect,
LPARAM  lParam = 0 
)
protectedinherited

[描画] 無効状態描画.

最後に使用されます。

引数
dcデバイスコンテキスト。
rect表示位置。
lParamIDrawable::DrawEx() の LPARAM の値

TnbMfcAbstractDrawingCtrl.h279 行目に定義があります。

◆ DrawFocusMark()

void DrawFocusMark ( HDC  dc,
const RECT &  rect,
LPARAM  lParam = 0 
)
protectedinherited

[描画] フォーカスマーク表示

引数
dcデバイスコンテキスト。
rect表示位置。
lParamIDrawable::DrawEx() の LPARAM の値

TnbMfcAbstractDrawingCtrl.h267 行目に定義があります。

◆ DrawItem()

virtual void DrawItem ( LPDRAWITEMSTRUCT  lpDrawItemStruct)
protectedvirtual

[通知] オーナードロー処理.

オーナードロー時コールされます。

覚え書き
描画情報を用意することで、任意に描画させることも出来ます。
引数
lpDrawItemStruct描画情報.

TnbMfcDrawingListBox.h305 行目に定義があります。

◆ DrawSelectMark()

void DrawSelectMark ( HDC  dc,
const RECT &  rect,
bool  isActive,
LPARAM  lParam = 0 
)
protectedinherited

[描画] 選択マーク表示

引数
dcデバイスコンテキスト。
rect表示位置。
isActivetrue ならアクティブ、 false ならノンアクティブの選択マークを書きます。
lParamIDrawable::DrawEx() の LPARAM の値

TnbMfcAbstractDrawingCtrl.h238 行目に定義があります。

◆ DrawText() [1/2]

void DrawText ( HDC  dc,
const RECT &  rect,
LPCTSTR  lpsz,
DWORD  drawStyle,
LPARAM  lParam = 0 
)
protectedinherited

[描画] 文字列描画

引数
dcデバイスコンテキスト。
rect表示位置。
lpsz文字列
drawStyleDrawTextスタイル指定。
lParamIDrawable::DrawEx() の LPARAM の値

TnbMfcAbstractDrawingCtrl.h327 行目に定義があります。

◆ DrawText() [2/2]

void DrawText ( HDC  dc,
const RECT &  rect,
LPCTSTR  lpsz,
LPARAM  lParam = 0 
)
protectedinherited

[描画] 文字列描画

引数
dcデバイスコンテキスト。
rect表示位置。
lpsz文字列
lParamIDrawable::DrawEx() の LPARAM の値

TnbMfcAbstractDrawingCtrl.h308 行目に定義があります。

◆ EndItemPaint()

bool EndItemPaint ( void  )
protectedinherited

[処理] 描画終了.

覚え書き
一連の描画の最後にコールします。
戻り値
true変化あり。
false変化無し。

TnbMfcAbstractDrawingCtrl.h388 行目に定義があります。

◆ GetBackColor()

COLORREF GetBackColor ( void  ) const
protectedinherited

[取得] 背景色取得.

戻り値

TnbMfcAbstractDrawingCtrl.h226 行目に定義があります。

◆ GetDrawing()

const IDrawable * GetDrawing ( int  index) const

[取得] 描画情報取得.

引数
index取得する位置.
戻り値
NULLエラー.
NULL以外描画情報。delete してはいけません。

TnbMfcDrawingListBox.h66 行目に定義があります。

◆ GetExStyle()

DWORD GetExStyle ( void  ) const
inherited

[取得] ウィンドウ拡張スタイル取得.

本インスタンスが管理しているウィンドウの拡張スタイルを返します。

戻り値
ウィンドウスタイル。 WS_EX_LEFT や WS_EX_TOPMOST などのシンボルが論理和(or)されている。

◆ GetSafeHwnd()

HWND GetSafeHwnd ( void  ) const
inherited

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

本インスタンスが管理しているウィンドウのハンドルを返します。

戻り値
ウィンドウハンドル

◆ GetSelectMarkType()

ESelectMarkType GetSelectMarkType ( void  ) const
protectedinherited

[取得] セレクトマークタイプ

戻り値
タイプ

TnbMfcAbstractDrawingCtrl.h217 行目に定義があります。

◆ GetStyle()

DWORD GetStyle ( void  ) const
inherited

[取得] ウィンドウスタイル取得.

本インスタンスが管理しているウィンドウのスタイルを返します。

戻り値
ウィンドウスタイル。 WS_CHILD や WS_MINIMIZE などのシンボルが論理和(or)されている。

◆ GetTextDrawStyle()

DWORD GetTextDrawStyle ( void  ) const
protectedinherited

[取得] 文字列描画スタイル取得.

戻り値
文字列描画スタイル

TnbMfcAbstractDrawingCtrl.h343 行目に定義があります。

◆ InsertDrawing()

int InsertDrawing ( int  index,
const IDrawable draw 
)

[追加] 描画情報一行挿入.

覚え書き
一行挿入します。
引数
index挿入する位置
draw描画情報
戻り値
LB_ERRエラー。
0以上追加したインデックス

TnbMfcDrawingListBox.h115 行目に定義があります。

◆ InsertString()

int InsertString ( int  index,
LPCTSTR  lpszItem 
)

[追加] 文字列一行挿入.

覚え書き
一行挿入します。
引数
index挿入する位置
lpszItem文字列
戻り値
LB_ERRエラー。
0以上追加したインデックス

TnbMfcDrawingListBox.h136 行目に定義があります。

◆ MeasureItem()

virtual void MeasureItem ( LPMEASUREITEMSTRUCT  lpMeasureItemStruct)
protectedvirtual

オーナードロー時.

ドロー時Itemの高さ確認のためにコールされる

引数
lpMeasureItemStruct情報

TnbMfcDrawingListBox.h291 行目に定義があります。

◆ ModifyStyle()

BOOL ModifyStyle ( DWORD  dwRemove,
DWORD  dwAdd,
UINT  nFlags = 0 
)
inherited

[設定] ウィンドウスタイル変更.

引数
dwRemove除去するスタイルを指定する。
dwAdd追加するスタイルを指定する。
nFlagsSetWindowPos() に渡すフラグ。0なら SetWindowPos() を呼びません。
戻り値
TRUE成功.
FALSE失敗.

◆ ModifyStyleEx()

BOOL ModifyStyleEx ( DWORD  dwRemove,
DWORD  dwAdd,
UINT  nFlags = 0 
)
inherited

[設定] ウィンドウ拡張スタイル変更.

引数
dwRemove除去する拡張スタイルを指定する。
dwAdd追加する拡張スタイルを指定する。
nFlagsSetWindowPos() に渡すフラグ。0なら SetWindowPos() を呼びません。
戻り値
TRUE成功.
FALSE失敗.

◆ PostMessageToRelatedHwnd()

void PostMessageToRelatedHwnd ( UINT  message,
WPARAM  wParam = 0,
LPARAM  lParam = 0 
)
inherited

[処理] 関連Windowハンドルへポスト

引数
messageメッセージ
wParamWPARAM
lParamLPARAM

TnbMfcAbstractDrawingCtrl.h193 行目に定義があります。

◆ PreSubclassWindow()

virtual void PreSubclassWindow ( void  )
protectedvirtual

[通知] subclassing/unsubclassing functions.

サブクラス化する時コールされます。

覚え書き
CWndのメソッドをオーバーライドしています。

TnbMfcDrawingListBox.h275 行目に定義があります。

◆ ResetContent()

void ResetContent ( void  )

[削除] 全描画情報削除.

TnbMfcDrawingListBox.h184 行目に定義があります。

◆ ResetDrawing()

int ResetDrawing ( int  index,
const IDrawable draw 
)

[追加] 描画情報変更.

覚え書き
設定した描画情報を変更します。
引数
index変更する位置
draw描画情報
戻り値
falseエラー。
true成功

TnbMfcDrawingListBox.h149 行目に定義があります。

◆ SetBackColor()

void SetBackColor ( COLORREF  color)
inherited

[設定] 背景色設定.

引数
color

TnbMfcAbstractDrawingCtrl.h157 行目に定義があります。

◆ SetBackgroundDrawer()

bool SetBackgroundDrawer ( const IDrawable draw)
inherited

[設定] 背景描画指定.

引数
drawResize() が有効な各アイテムの背景描画情報。
戻り値
true成功。
false失敗。

TnbMfcAbstractDrawingCtrl.h92 行目に定義があります。

◆ SetDefaultMarkDrawer()

void SetDefaultMarkDrawer ( COLORREF  base = ::GetSysColor(COLOR_WINDOW))
inherited

[設定] デフォルトのマーク描画指定.

フォーカスマーク、選択マークをWindow標準と同じ様にします。

引数
baseベースの色。省略すると Windows標準と同じ様にします。

TnbMfcAbstractDrawingCtrl.h58 行目に定義があります。

◆ SetDefaultTextDrawer()

void SetDefaultTextDrawer ( CWnd pWnd)
protectedinherited

[設定] テキスト描画情報設定.

覚え書き
設定されていない場合デフォルトの描画情報を設定します。
引数
pWndウィンドウ

TnbMfcAbstractDrawingCtrl.h357 行目に定義があります。

◆ SetDisabledStyleDrawer()

bool SetDisabledStyleDrawer ( const IDrawable draw)
inherited

[設定] 無効状態描画指定.

覚え書き
全て描画後にこの描画情報が使用されます。
引数
drawResize() が有効な無効状態描画情報。
戻り値
true成功。
false失敗。

TnbMfcAbstractDrawingCtrl.h148 行目に定義があります。

◆ SetFocusMarkDrawer()

bool SetFocusMarkDrawer ( const IDrawable draw)
inherited

[設定] フォーカスマーク描画指定.

引数
drawResize() が有効なフォーカスマークの描画情報。
戻り値
true成功。
false失敗。

TnbMfcAbstractDrawingCtrl.h136 行目に定義があります。

◆ SetSelectMarkDrawer() [1/2]

bool SetSelectMarkDrawer ( const IDrawable draw,
ESelectMarkType  type = OVERLAP 
)
inherited

[設定] 選択マーク描画指定.

覚え書き
アクティブ時と非アクティブ時で同じ選択マークを使います。
引数
drawResize() が有効な選択マークの描画情報。
type選択マークのタイプ。省略すると、 OVERLAP になります。
戻り値
true成功。
false失敗。

TnbMfcAbstractDrawingCtrl.h105 行目に定義があります。

◆ SetSelectMarkDrawer() [2/2]

bool SetSelectMarkDrawer ( const IDrawable draw1,
const IDrawable draw2,
ESelectMarkType  type = OVERLAP 
)
inherited

[設定] 選択マーク描画指定.

引数
draw1Resize() が有効なアクティブ時の選択マークの描画情報。
draw2Resize() が有効な非アクティブ時の選択マークの描画情報。
type選択マークのタイプ。省略すると、 OVERLAP になります。
戻り値
true成功。
false失敗。

TnbMfcAbstractDrawingCtrl.h124 行目に定義があります。

◆ SetTextDrawer()

void SetTextDrawer ( const CTextDrawer text)
inherited

[設定] テキスト描画情報指定

覚え書き
指定しない場合でも、標準相当の描画が行われます。
引数
textテキスト描画

TnbMfcAbstractDrawingCtrl.h172 行目に定義があります。

◆ SetWindowPos()

BOOL SetWindowPos ( const CWnd pWndInsertAfter,
int  x,
int  y,
int  cx,
int  cy,
UINT  nFlags 
)
inherited

[設定] ウィンドウサイズポジション設定.

子ウィンドウ、ポップアップ ウィンドウ、およびトップレベル ウィンドウのサイズ、位置、および Z オーダーを変更します。

引数
pWndInsertAfterZ オーダーでこの CWnd オブジェクトより前に配置される CWnd オブジェクトを識別します。このパラメータへは、 CWnd へのポインタか 次の値のいずれか 1 つを指定できます。
  • wndBottom ウィンドウを Z オーダーの一番下に置きます。この CWnd が最上位のウィンドウの場合、ウィンドウの最上位ステータスは失われます。 システムでは、このウィンドウをほかのすべてのウィンドウよりも下に置きます。
  • wndTop ウィンドウを Z オーダーの先頭に置きます。
  • wndTopMost ウィンドウを最上位でないすべてのウィンドウの上に置きます。 ウィンドウは、非アクティブになったときも、最上位の位置を保持します。
  • wndNoTopMost ウィンドウを最上位でないすべてのウィンドウの先頭に再配置します (つまり、一番手前のすべてのウィンドウの後ろに置きます)。 ウィンドウが既に非最上位ウィンドウとなっているときは、このフラグは無効です。
xウィンドウの新しい左辺の位置を指定します。
yウィンドウの新しい上辺の位置を指定します。
cxウィンドウの新しい幅を指定します。
cyウィンドウの新しい高さを指定します。
nFlagsサイズ変更オプションおよび位置指定オプションを指定します。このパラメータには、次の値を組み合わせて指定できます。
  • SWP_DRAWFRAME ウィンドウの周りにフレーム (ウィンドウ作成時に定義されます) を描画します。
  • SWP_FRAMECHANGED ウィンドウのサイズが変化されていない場合でも、ウィンドウに WM_NCCALCSIZE メッセージを送信します。このフラグが指定されていない場合、WM_NCCALCSIZE メッセージはウィンドウのサイズが実際に変化しているときにだけ送られます。
  • SWP_HIDEWINDOW ウィンドウを非表示にします。
  • SWP_NOACTIVATE ウィンドウをアクティブにしません。このフラグが設定されていないと、ウィンドウはアクティブになり、最上位または非最上位のウィンドウ グループのいずれかの先頭に移動されます (パラメータ pWndInsertAfter の設定に依存します)。
  • SWP_NOCOPYBITS クライアント領域の内容全体を破棄します。このフラグが指定されていない場合、クライアント領域の有効な内容はすべて保存されます。保存された内容は、ウィンドウのサイズや位置が再び変更されたときにクライアント領域に復元されます。
  • SWP_NOMOVE 現在位置を保持します (x パラメータと y パラメータを無視します)。
  • SWP_NOOWNERZORDER オーナー ウィンドウの Z オーダーの位置を変更しません。
  • SWP_NOREDRAW 変更があっても再描画しません。このフラグが設定されていると、どのような種類の再描画も行われません。このことは、クライアント領域、非クライアント領域 (タイトルやスクロール バーを含みます)、ウィンドウが移動したことにより覆われない親ウィンドウのあらゆる部分に適用されます。このフラグが設定されているときは、アプリケーションは再描画が必要なウィンドウや親ウィンドウのあらゆる部分を明示的に無効領域または再描画する必要があります。
  • SWP_NOREPOSITION SWP_NOOWNERZORDER と同じです。
  • SWP_NOSENDCHANGING ウィンドウが WM_WINDOWPOSCHANGING メッセージを受信しないようにします。
  • SWP_NOSIZE 現在のサイズを保持します (cx パラメータと cy パラメータを無視します)。
  • SWP_NOZORDER 現在の順序を保持します (pWndInsertAfter を無視します)。
  • SWP_SHOWWINDOW ウィンドウを表示します。
戻り値
TRUE成功.
FALSE失敗.

◆ ShowWindow()

BOOL ShowWindow ( int  nCmdShow)
inherited

[設定] ウィンドウ表示状態.

引数
nCmdShowCWnd を表示する方法を指定します。次の値のいずれかになります。
  • SW_HIDE このウィンドウを非表示にし、他のウィンドウをアクティブにします。
  • SW_MINIMIZE ウィンドウを最小化し、システムのリストのトップレベル ウィンドウをアクティブにします。
  • SW_RESTORE ウィンドウをアクティブにし、表示します。ウィンドウが最小化または最大化されている場合は、Windows によって元のサイズと位置に戻されます。
  • SW_SHOW ウィンドウをアクティブにし、現在のサイズと位置で表示します。
  • SW_SHOWMAXIMIZED ウィンドウをアクティブにし、最大表示します。
  • SW_SHOWMINIMIZED ウィンドウをアクティブにし、最小化して表示します。
  • SW_SHOWMINNOACTIVE ウィンドウを最小化して表示します。現在アクティブなウィンドウはアクティブなまま表示します。
  • SW_SHOWNA 現在の状態でウィンドウを表示します。現在アクティブなウィンドウはアクティブなまま表示します。
  • SW_SHOWNOACTIVATE ウィンドウを直前のサイズと位置で表示します。現在アクティブなウィンドウはアクティブなまま表示します。
  • SW_SHOWNORMAL ウィンドウをアクティブにし、表示します。ウィンドウが最小化または最大化されている場合は、Windows によって元のサイズと位置に戻されます。
戻り値
TRUE成功.
FALSE失敗.

◆ WindowProc()

virtual LRESULT WindowProc ( UINT  message,
WPARAM  wParam,
LPARAM  lParam 
)
protectedvirtual

[通知] for processing Windows messages.

メッセージ受信したらコールされます。 ListBox 関係のメッセージをフックしています。

覚え書き
CWndのメソッドをオーバーライドしています。
引数
messageメッセージ
wParamWPARAM
lParamLPARAM
戻り値
リザルト。

TnbMfcDrawingListBox.h218 行目に定義があります。