AnimateWindow 函式 (winuser.h)
可讓您在顯示或隱藏視窗時產生特殊效果。 動畫有四種類型:滾動、投影片、折迭或展開,以及 Alpha 混合淡化。
語法
BOOL AnimateWindow(
[in] HWND hWnd,
[in] DWORD dwTime,
[in] DWORD dwFlags
);
參數
[in] hWnd
類型: HWND
要產生動畫效果之視窗的控制碼。 呼叫執行緒必須擁有此視窗。
[in] dwTime
類型: DWORD
播放動畫所需的時間,以毫秒為單位。 一般而言,動畫需要 200 毫秒才能播放。
[in] dwFlags
類型: DWORD
動畫的類型。 此參數可以是下列一或多個值。 請注意,根據預設,這些旗標會在顯示視窗時生效。 若要在隱藏視窗時生效,請使用 AW_HIDE 和邏輯 OR 運算子搭配適當的旗標。
傳回值
類型: BOOL
如果函式成功,則傳回非零的值。
如果此函式失敗,則傳回值為零。 在下列情況下,函式將會失敗:
- 如果視窗已經可見,而且您嘗試顯示視窗。
- 如果視窗已經隱藏,而且您嘗試隱藏視窗。
- 如果沒有指定投影片或投影片動畫的方向。
- 嘗試使用 AW_BLEND建立子視窗的動畫時。
- 如果執行緒沒有擁有視窗。 請注意,在此情況下, AnimateWindow 會失敗,但 GetLastError 會傳回 ERROR_SUCCESS。
備註
若要顯示或隱藏沒有特殊效果的視窗,請使用 ShowWindow。
使用投影片或滾動動畫時,您必須指定方向。 它可以是 AW_HOR_POSITIVE、 AW_HOR_NEGATIVE、AW_VER_POSITIVE或AW_VER_NEGATIVE。
您可以結合 AW_HOR_POSITIVE 或 AW_HOR_NEGATIVE 與 AW_VER_POSITIVE 或 AW_VER_NEGATIVE ,以對角線顯示視窗的動畫效果。
視窗及其子視窗的視窗程式應該處理任何 WM_PRINT 或 WM_PRINTCLIENT 訊息。 對話方塊、控制項和一般控制項已經處理 WM_PRINTCLIENT。 預設視窗程式已經處理 WM_PRINT。
如果子視窗部分裁剪,當子視窗呈現動畫時,就會有裁剪的漏洞。
AnimateWindow 支援 RTL 視窗。
避免以動畫顯示具有陰影的視窗,因為它會產生視覺上的干擾、Jerky 動畫。
規格需求
最低支援的用戶端 | 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) |
另請參閱
概念
其他資源
參考