WM_SIZE

WM_SIZE メッセージは、ウィンドウのサイズが変更された直後に送信されます。

ウィンドウは、ウィンドウプロシージャを介してこのメッセージを受け取ります。

#define  WM_SIZE    0x0005

fwSizeType = wParam;               // フラグ
nWidth  =  lParam & 0xFFFF;        // xサイズ
nHeight = (lParam >> 16) & 0xFFFF; // yサイズ

パラメータ

fwSizeType

wParam パラメータの値。

サイズ変更のタイプが指定されます。以下の値のいずれかになります。

意味
0 (SIZE_RESTORED)

ウィンドウがサイズ変更されました。ただし最小化または最大化ではありません。

1 (SIZE_MINIMIZED)

ウィンドウが最小化されました。

2 (SIZE_MAXIMIZED)

ウィンドウが最大化されました。

3 (SIZE_MAXSHOW)

ある他のウィンドウが元のサイズに戻されたとき、すべてのポップアップウィンドウに送られます。

4 (SIZE_MAXHIDE)

ある他のウィンドウが最大化されたとき、すべてのポップアップウィンドウに送られます。

nWidth

lParam パラメータの下位ワードの値。

クライアントエリアの新しい幅が指定されます。

nHeight

lParam パラメータの上位ワードの値。

クライアントエリアの新しい高さが指定されます。

戻り値

アプリケーションがこのメッセージを処理した場合は 0 を返します。

解説

WM_SIZE メッセージの結果として SetScrollPos 関数または MoveWindow 関数で子ウィンドウを操作する場合は、再描画フラグ(bRepaint パラメータ)に 0 以外の値を指定してウィンドウを再描画させなければなりません。

対応情報

Windows 95 以降 / Windows NT 3.1 以降