ShowWindow 函式 (winuser.h)

設定指定的視窗顯示狀態。

語法

BOOL ShowWindow(
  [in] HWND hWnd,
  [in] int  nCmdShow
);

參數

[in] hWnd

類型: HWND

視窗的控制碼。

[in] nCmdShow

類型: int

控制視窗的顯示方式。 如果啟動應用程式的程式提供STARTUPINFO結構,則第一次呼叫ShowWindow時會忽略此參數。 否則,第一次呼叫 ShowWindow 時,此值應該是 WinMain 函式在其 nCmdShow 參數中取得的值。 在後續呼叫中,此參數可以是下列其中一個值。

意義
SW_HIDE
0
隱藏視窗並啟動另一個視窗。
SW_SHOWNORMAL
SW_NORMAL
1
啟動並顯示視窗。 如果視窗最小化、最大化或排列,系統就會將其還原為其原始大小和位置。 當第一次顯示視窗時,應用程式應該指定此旗標。
SW_SHOWMINIMIZED
2
啟動視窗,並將它顯示為最小化的視窗。
SW_SHOWMAXIMIZED
SW_MAXIMIZE
3
啟動視窗,並將它顯示為最大化的視窗。
SW_SHOWNOACTI加值稅E
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

如果先前顯示視窗,則傳回值為非零。

如果先前隱藏視窗,則傳回值為零。

備註

若要在顯示或隱藏視窗時執行特定特殊效果,請使用 AnimateWindow

第一次應用程式呼叫ShowWindow時,它應該使用WinMain函式的nCmdShow 參數作為其 nCmdShow參數。 對 ShowWindow的後續呼叫必須使用指定清單中的其中一個值,而不是WinMain函式的nCmdShow參數所指定的值。

nCmdShow參數的討論所述,如果啟動應用程式的程式指定結構中的啟動資訊,則會在第一次呼叫ShowWindow時忽略nCmdShow值。 在此情況下, ShowWindow 會使用 STARTUPINFO 結構中指定的資訊來顯示視窗。 在後續呼叫時,應用程式必須呼叫 ShowWindow ,並將 nCmdShow 設定為 SW_SHOWDEFAULT ,才能使用啟動應用程式的程式所提供的啟動資訊。 此行為是針對下列情況所設計:

  • 應用程式會呼叫 CreateWindow並設定WS_VISIBLE 旗標,以建立其主視窗。
  • 應用程式藉由呼叫已清除WS_VISIBLE旗標的CreateWindow來建立主視窗,稍後使用設定SW_SHOW旗標呼叫ShowWindow,使其可見。

範例

如需範例,請參閱 建立主視窗

規格需求

   
最低支援的用戶端 Windows 2000 專業版 [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限傳統型應用程式]
目標平台 Windows
標頭 winuser.h (包括 Windows.h)
程式庫 User32.lib
Dll User32.dll
API 集合 ext-ms-win-ntuser-window-l1-1-0 (于 Windows 8)

另請參閱

AnimateWindow

概念

CreateProcess

CreateWindow

其他資源

參考

STARTUPINFO

ShowOwnedPopups

ShowWindowAsync

WinMain

Windows