ShowWindow function (winuser.h)
Sets the specified window's show state.
BOOL ShowWindow( [in] HWND hWnd, [in] int nCmdShow );
A handle to the window.
Controls how the window is to be shown. This parameter is ignored the first time an application calls ShowWindow, if the program that launched the application provides a STARTUPINFO structure. Otherwise, the first time ShowWindow is called, the value should be the value obtained by the WinMain function in its nCmdShow parameter. In subsequent calls, this parameter can be one of the following values.
|Hides the window and activates another window.|
|Activates and displays a window. If the window is minimized, maximized, or arranged, the system restores it to its original size and position. An application should specify this flag when displaying the window for the first time.|
|Activates the window and displays it as a minimized window.|
|Activates the window and displays it as a maximized window.|
|Displays a window in its most recent size and position. This value is similar to SW_SHOWNORMAL, except that the window is not activated.|
|Activates the window and displays it in its current size and position.|
|Minimizes the specified window and activates the next top-level window in the Z order.|
|Displays the window as a minimized window. This value is similar to SW_SHOWMINIMIZED, except the window is not activated.|
|Displays the window in its current size and position. This value is similar to SW_SHOW, except that the window is not activated.|
|Activates and displays the window. If the window is minimized, maximized, or arranged, the system restores it to its original size and position. An application should specify this flag when restoring a minimized window.|
|Sets the show state based on the SW_ value specified in the STARTUPINFO structure passed to the CreateProcess function by the program that started the application.|
|Minimizes a window, even if the thread that owns the window is not responding. This flag should only be used when minimizing windows from a different thread.|
If the window was previously visible, the return value is nonzero.
If the window was previously hidden, the return value is zero.
To perform certain special effects when showing or hiding a window, use AnimateWindow.
The first time an application calls ShowWindow, it should use the WinMain function's nCmdShow parameter as its nCmdShow parameter. Subsequent calls to ShowWindow must use one of the values in the given list, instead of the one specified by the WinMain function's nCmdShow parameter.
As noted in the discussion of the nCmdShow parameter, the nCmdShow value is ignored in the first call to ShowWindow if the program that launched the application specifies startup information in the structure. In this case, ShowWindow uses the information specified in the STARTUPINFO structure to show the window. On subsequent calls, the application must call ShowWindow with nCmdShow set to SW_SHOWDEFAULT to use the startup information provided by the program that launched the application. This behavior is designed for the following situations:
- Applications create their main window by calling CreateWindow with the WS_VISIBLE flag set.
- Applications create their main window by calling CreateWindow with the WS_VISIBLE flag cleared, and later call ShowWindow with the SW_SHOW flag set to make it visible.
For an example, see Creating a Main Window.
|Minimum supported client||Windows 2000 Professional [desktop apps only]|
|Minimum supported server||Windows 2000 Server [desktop apps only]|
|Header||winuser.h (include Windows.h)|
|API set||ext-ms-win-ntuser-window-l1-1-0 (introduced in Windows 8)|