CWnd::OnSize
更新 : 2007 年 11 月
ウィンドウのサイズが変更された後、フレームワークからこのメンバ関数が呼び出されます。
afx_msg void OnSize(
UINT nType,
int cx,
int cy
);
パラメータ
nType
要求されるサイズ変更のタイプを示します。このパラメータは、次のいずれかの値になります。SIZE_MAXIMIZED ウィンドウは最大表示されています。
SIZE_MINIMIZED ウィンドウは最小化されています。
SIZE_RESTORED ウィンドウはサイズ変更されていますが、サイズ変更の種類は SIZE_MINIMIZED でも SIZE_MAXIMIZED でもありません。
SIZE_MAXHIDE ほかのウィンドウが最大表示されたとき、すべてのポップアップ ウィンドウにメッセージが送られます。
SIZE_MAXSHOW ほかのウィンドウが元のサイズに戻されたとき、すべてのポップアップ ウィンドウにメッセージが送られます。
cx
クライアント領域の新しい幅を指定します。cy
クライアント領域の新しい高さを指定します。
解説
OnSize メンバ関数から子ウィンドウに対して SetScrollPos メンバ関数または MoveWindow メンバ関数が呼び出された場合、CWnd を再描画するには、SetScrollPos または MoveWindow メンバ関数のパラメータ bRedraw を 0 以外の値にする必要があります。
メモ : |
---|
このメンバ関数は、アプリケーションが Windows メッセージを処理できるようにするためにフレームワークによって呼び出されます。この関数に渡されるパラメータの値は、フレームワークがメッセージ受信時に受け取ったパラメータの値に基づいています。この関数の基本クラスの実装を呼び出した場合は、関数に渡したパラメータではなく、メッセージと共に渡されたパラメータ自体が使用されます。 |
使用例
// Resize the edit control contained in the view to
// fill the entire view when the view's window is
// resized. CMdiView is a CView derived class.
void CMdiView::OnSize(UINT nType, int cx, int cy)
{
CView::OnSize(nType, cx, cy);
// Resize edit to fill the whole view.
// OnSize can be called before OnInitialUpdate
// so make sure the edit control has been created.
if (::IsWindow(m_Edit.GetSafeHwnd()))
{
m_Edit.MoveWindow (0, 0, cx, cy);
}
}
必要条件
ヘッダー : afxwin.h