马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
注:本文档由 谁动了我的豆包 翻译,小甲鱼校对。
原文链接 -> 传送门
函数功能:
AnimateWindow 函数用于在显示或者隐藏窗口时制造特殊的效果。在这有四种类型的动画效果:滚动,滑动,折叠或展开,和阿尔法混合淡出。
API 函数原型:
注释:_In_ 说明该参数是输入的。BOOL WINAPI AnimateWindow(
_In_ HWND hwnd,
_In_ DWORD dwTime,
_In_ DWORD dwFlags
);
参数解析:
参数 | 含义 | hwnd | 1. 该参数指定产生动画的窗口的句柄
2. 正在被调用的线程必须拥有该窗口 | dwTime | 1. 该参数指明播放动画所需要的时间(以微妙计)
2. 通常,播放一个动画需要 200 微秒 | dwFlags | 1. 该参数指定动画的类型
2. 该参数可以是一个或者多个下列标识的组合:
值 | 含义 | AW_ACTIVATE
(0x00020000) | 该标识用于激活窗口。该标识不要与 AW_HIDE 标识一起使用 | AW_BLEND
(0x00080000) | 该标识用于使用淡出效果。只有 hWnd 参数为顶级窗口时,才可以使用该标识 | AW_CENTER
(0x00000010) | 若使用了 AW_HIDE 标识,该标识则使窗口向内折叠;若未使用 AW_HIDE 标识,该标识则使窗口向外折叠。此时各种方向标识没有效果 | AW_HIDE
(0x00010000) | 该标识用于隐藏窗口。默认情况下,该窗口是显示的 | AW_HOR_POSITIVE
(0x00000001) | 该标识用于自左向右地动画显示窗口。该标识可以与滚动动画或滑动动画共同使用。当与 AW_CENTER 标识或 AW_BLEND 标识共同使用时,该标识被忽略 | AW_HOR_NEGATIVE
(0x00000002) | 该标识用于自右向左地动画显示窗口。该标识可以与滚动动画或滑动动画共同使用。当与 AW_CENTER 标识或 AW_BLEND 标识共同使用时,该标识被忽略 | AW_SLIDE
(0x00040000) | 该标识用于使用滑动动画。默认情况下,使用滚动动画。当与 AW_CENTER 标识共同使用时,该标识被忽略 | AW_VER_POSITIVE
(0x00000004) | 该标识用于自上而下地动画显示窗口。该标识可以与滚动动画或滑动动画共同使用。当与 AW_CENTER 标识或 AW_BLEND 标识共同使用时,该标识被忽略 | AW_VER_NEGATIVE
(0x00000008) | 该标识用于自下而上地动画显示窗口。该标识可以与滚动动画或滑动动画共同使用。当与 AW_CENTER 标识或 AW_BLEND 标识共同使用时,该标识被忽略 |
3. 请注意,默认情况下,这些标识在显示窗口时生效。想要让这些标识在隐藏一个窗口时生效,可以用 AW_HIDE 标识和一个带有合适的标识的逻辑或操作符 |
返回值:
1. 如果该函数运行成功,则返回值为非 0;
2. 如果该函数运行失败,则返回值为 0。
在下列情况下,该函数将运行失败:
- 如果窗口已经可见,并且你还要试图去显示窗口
- 如果窗口已经被隐藏,并且你还要试图去隐藏窗口
- 如果没有直接指定滑动动画或者滚动动画的方向
- 当你试图去用 AW_BLEND 标识动画显示一个子窗口时
- 如果线程不拥有窗口;注意,在这种情况下,AnimateWindow 函数会运行失败,但是 GetLastError 函数会返回 ERROR_SUCCESS
想要调用更多的错误信息,请调用 GetLastError 函数。
备注:
1. 想要显示或者隐藏一个不带有特殊效果的窗口,请用 ShowWindow 函数。
2. 当用滑动动画或者滚动动画时,你必须指明方向。该方向可以是 AW_HOR_POSITIVE 标识,AW_HOR_NEGATIVE 标识,AW_VER_POSITIVE 标识,或者 AW_VER_NEGATIVE 标识中的任意一个。
3. 你可以将 AW_HOR_POSITIVE 标识或 AW_HOR_NEGATIVE 标识与 AW_VER_POSITIVEH 或 AW_VER_NEGATIVE 标识组合,用来在对角线方向上动画显示一个窗口。
4. 窗口和该窗口的子窗口的窗口程序将会处理任何 WM_PRINT 消息或者 WM_PRINTCLIENT 消息。对话框,控件,和通用控件已经处理了 WM_PRINTCLIENT 消息。默认的窗口程序早已经处理了 WM_PRINT 消息。
5. 如果子窗口被缩短后部分显示,那么当该窗口动画显示时,在该窗口被缩短的地方将有洞。
6. AnimateWindow 函数支持 RTL 窗口。
7. 要避免动画显示一个有阴影窗口,因为该阴影会产生视觉上的干扰、笨拙的动画。
需求:
Minimum supported client | Windows 2000 专业版 [仅桌面应用程序] | Minimum supported server | Windows 2000 服务器版 [仅桌面应用程序] | Header | Winuser.h (包含于 Windows.h) | Library | User32.lib | DLL | User32.dll |
【API档案】版权归鱼C工作室(www.fishc.com)所有,转载请注明来源。
|