MoveWindow 関数 (winuser.h)

指定したウィンドウの位置と寸法を変更します。 トップレベル ウィンドウの場合、位置と寸法は画面の左上隅を基準にしています。 子ウィンドウの場合、親ウィンドウのクライアント領域の左上隅を基準にしています。

構文

BOOL MoveWindow(
  [in] HWND hWnd,
  [in] int  X,
  [in] int  Y,
  [in] int  nWidth,
  [in] int  nHeight,
  [in] BOOL bRepaint
);

パラメーター

[in] hWnd

型: HWND

ウィンドウへのハンドル。

[in] X

型: int

ウィンドウの左側の新しい位置。

[in] Y

型: int

ウィンドウの上部の新しい位置。

[in] nWidth

型: int

ウィンドウの新しい幅。

[in] nHeight

型: int

ウィンドウの新しい高さ。

[in] bRepaint

種類: BOOL

ウィンドウを再描画するかどうかを示します。 このパラメーターが TRUE の場合、ウィンドウはメッセージを受信します。 パラメーターが FALSE の場合、任意の種類の再描画は行われません。 これは、クライアント領域、クライアント以外の領域 (タイトル バーとスクロール バーを含む)、および子ウィンドウを移動した結果として明らかにされた親ウィンドウの任意の部分に適用されます。

戻り値

種類: BOOL

関数が成功すると、戻り値は 0 以外になります。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

bRepaint パラメーターが TRUE の場合、システムはウィンドウを移動した直後にウィンドウ プロシージャにWM_PAINT メッセージを送信します (つまり、MoveWindow 関数は UpdateWindow 関数を呼び出します)。 bRepaintFALSE の場合、アプリケーションは、ウィンドウと親ウィンドウの再描画が必要な部分を明示的に無効化または再描画する必要があります。

MoveWindow は、 WM_WINDOWPOSCHANGINGWM_WINDOWPOSCHANGEDWM_MOVEWM_SIZEWM_NCCALCSIZE メッセージをウィンドウに送信します。

例については、「 子ウィンドウの作成、列挙、およびサイズ変更」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー winuser.h (Windows.h を含む)
Library User32.lib
[DLL] User32.dll
API セット ext-ms-win-ntuser-window-l1-1-1 (Windows 8.1 で導入)

関連項目

概念

その他のリソース

リファレンス

Setwindowpos

UpdateWindow

WM_GETMINMAXINFO

Wm_paint

Windows