ShowWindow 関数 (winuser.h)
指定したウィンドウの表示状態を設定します。
構文
BOOL ShowWindow(
[in] HWND hWnd,
[in] int nCmdShow
);
パラメーター
[in] hWnd
型: HWND
ウィンドウへのハンドル。
[in] nCmdShow
型: int
ウィンドウの表示方法を制御します。 アプリケーションを起動したプログラムが STARTUPINFO 構造体を提供する場合、アプリケーションが ShowWindow を初めて呼び出す場合、このパラメーターは無視されます。 それ以外の場合、ShowWindow を初めて呼び出す場合、値は、その nCmdShow パラメーターの WinMain 関数によって取得された値である必要があります。 後続の呼び出しでは、このパラメーターには次のいずれかの値を指定できます。
値 | 意味 |
---|---|
SW_HIDE 0 |
ウィンドウを非表示にし、別のウィンドウをアクティブにします。 |
SW_SHOWNORMAL SW_NORMAL 1 |
ウィンドウをアクティブにして表示します。 ウィンドウが最小化、最大化、または配置されている場合は、元のサイズと位置に復元されます。 アプリケーションでは、ウィンドウを初めて表示するときにこのフラグを指定する必要があります。 |
SW_SHOWMINIMIZED 2 |
ウィンドウをアクティブ化し、最小化されたウィンドウとして表示します。 |
SW_SHOWMAXIMIZED SW_MAXIMIZE 3 |
ウィンドウをアクティブ化し、最大化されたウィンドウとして表示します。 |
SW_SHOWNOACTIVATE 4 |
ウィンドウを最新のサイズと位置で表示します。 この値は、ウィンドウがアクティブ化されていないことを除き、 SW_SHOWNORMALに似ています。 |
SW_SHOW 5 |
ウィンドウをアクティブ化し、現在のサイズと位置で表示します。 |
SW_MINIMIZE 6 |
指定したウィンドウを最小化し、Z オーダーで次の最上位ウィンドウをアクティブにします。 |
SW_SHOWMINNOACTIVE 7 |
ウィンドウを最小化されたウィンドウとして表示します。 この値は、ウィンドウがアクティブになっていない点を除き、 SW_SHOWMINIMIZEDに似ています。 |
SW_SHOWNA 8 |
ウィンドウを現在のサイズと位置で表示します。 この値は、ウィンドウがアクティブ化されていないことを除き、 SW_SHOWに似ています。 |
SW_RESTORE 9 |
ウィンドウをアクティブにして表示します。 ウィンドウが最小化、最大化、または配置されている場合は、元のサイズと位置に復元されます。 最小化されたウィンドウを復元するときは、アプリケーションでこのフラグを指定する必要があります。 |
SW_SHOWDEFAULT 10 |
アプリケーションを起動したプログラムによって CreateProcess 関数に渡される STARTUPINFO 構造体で指定されたSW_値に基づいて表示状態を設定します。 |
SW_FORCEMINIMIZE 11 |
ウィンドウを所有するスレッドが応答していない場合でも、ウィンドウを最小化します。 このフラグは、別のスレッドからウィンドウを最小化する場合にのみ使用する必要があります。 |
戻り値
種類: BOOL
ウィンドウが以前に表示されていた場合、戻り値は 0 以外です。
ウィンドウが以前に非表示だった場合、戻り値は 0 になります。
解説
ウィンドウを表示または非表示にするときに特定の特殊効果を実行するには、 AnimateWindow を使用します。
アプリケーションが ShowWindow を初めて呼び出す場合は、 WinMain 関数の nCmdShow パラメーターを nCmdShow パラメーターとして使用する必要があります。 ShowWindow の後続の呼び出しでは、WinMain 関数の nCmdShow パラメーターで指定された値ではなく、指定されたリスト内の値のいずれかを使用する必要があります。
nCmdShow パラメーターの説明で説明したように、アプリケーションを起動したプログラムが 構造体のスタートアップ情報を指定している場合、ShowWindow の最初の呼び出しでは nCmdShow 値は無視されます。 この場合、 ShowWindow は STARTUPINFO 構造体で指定された情報を使用してウィンドウを表示します。 後続の呼び出しでは、アプリケーションを起動したプログラムによって提供されるスタートアップ情報を使用するには、アプリケーションで showWindow を呼び出し、 nCmdShow を SW_SHOWDEFAULT に設定する必要があります。 この動作は、次の状況に対応するように設計されています。
- アプリケーションでは、WS_VISIBLE フラグを設定して CreateWindow を呼び出して、メイン ウィンドウを作成します。
- アプリケーションでは、WS_VISIBLE フラグがクリアされた CreateWindow を呼び出してメイン ウィンドウを作成し、後で SW_SHOW フラグを設定して ShowWindow を呼び出して表示します。
例
例については、「 メイン ウィンドウの作成」を参照してください。
要件
サポートされている最小のクライアント | 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-0 (Windows 8で導入) |
関連項目
概念
その他のリソース
リファレンス