CWnd::SendMessageToDescendants
指定された Windows のメッセージをすべての子孫ウィンドウに送るために呼び出されます。
void SendMessageToDescendants(
UINT message,
WPARAM wParam = 0,
LPARAM lParam = 0,
BOOL bDeep = TRUE,
BOOL bOnlyPerm = FALSE
);
パラメーター
message
送るメッセージを指定します。wParam
メッセージ依存の追加情報を指定します。lParam
メッセージ依存の追加情報を指定します。bDeep
検索するレベルを指定します。 TRUE の場合はすべての子ウィンドウを検索します。FALSE の場合は直系の子ウィンドウのみを検索します。bOnlyPerm
一時的なウィンドウが受け取るメッセージかどうかを指定します。 TRUE の場合、一時的なウィンドウはメッセージを受け取ることができます。FALSE の場合、パーマネント ウィンドウだけがメッセージを受け取ることができます。 一時的なウィンドウの詳細については、「テクニカル ノート 3: Windows ハンドルとオブジェクト間のマップ」を参照してください。
解説
パラメーター bDeep が FALSE の場合は、ウィンドウの直系の子ウィンドウにメッセージが送られます。それ以外の場合は、すべての子孫ウィンドウにメッセージが送られます。
bDeep と bOnlyPerm の両者が TRUE の場合は、それ以下の一時的なウィンドウも継続して検索します。 この場合、検索中に見つかったパーマネント ウィンドウだけがメッセージを受け取ります。 パラメーター bDeep が FALSE の場合は、ウィンドウの直系の子ウィンドウだけにメッセージが送られます。
使用例
// The following code fragment is from CMyDlg::OnInitDialog
// CMyDlg is derived from CDialog.
// change font of child controls of a dialog
LOGFONT lf = {0};
// redraw of child controls not needed in OnInitDialog
// since controls aren't drawn yet.
short int fRedraw = FALSE;
lf.lfHeight = 15; // Request a 15-pixel-high font
// with face name "Arial".
wcscpy_s(lf.lfFaceName, LF_FACESIZE, _T("Arial"));
m_font.CreateFontIndirect(&lf); // Create the font.
SendMessageToDescendants(WM_SETFONT,
(WPARAM)m_font.m_hObject, //handle to font
MAKELONG ((WORD) fRedraw, 0),
FALSE); // send to all descendants(TRUE) or
// just children of *this (FALSE)
必要条件
**ヘッダー:**afxwin.h