![]() ![]() |
|
AnimateWindowAPI | |
作者:佚名 文章来源:不详 点击数 更新时间:2008/4/18 14:44:37 文章录入:杜斌 责任编辑:杜斌 | |
|
|
尽管MSDN页面上说这个函数是Win2000的最新函数,但经网友证实在Win98里就已经有这个函数了: Private Declare Function AnimateWindow Lib "user32" (ByVal hwnd As Long, ByVal dwTime As Long, ByVal dwFlags As Long) As Long 其中: hwnd只对Form有效,其他像Picture1都无法产生效果。 dwTime是动画持续的时间,默认为200。 dwFlags可取以下值: AW_HOR_POSITIVE ( &H1 ) ´从左到右打开窗口 AW_HOR_NEGATIVE ( &H2 ) ´从右到左打开窗口 AW_VER_POSITIVE ( &H4 ) ´从上到下打开窗口 AW_VER_NEGATIVE ( &H8 ) ´从下到上打开窗口 AW_CENTER ( &H10 ) ´看不出任何效果 AW_HIDE (&H10000) ´在窗体卸载时若想使用本函数就得加上此常量 AW_ACTIVATE (&H20000) ´在窗体通过本函数打开后,默认情况下会失去焦点,除非加上本常量 AW_SLIDE (&H40000) ´看不出任何效果 AW_BLEND (&H80000) ´淡入淡出效果 最后一个就是我要找的,遗憾的是只对Win2000有效。下边是窗体淡入的效果,如果没有Win2000的话就看不出来了: Form1.BorderStyle = 1 Form1.Caption="" Form1.ControlBox="" 再给Form1一附大小合适的背景图。 Private Sub Form_Click() Unload Me End Sub Private Sub Form_Unload(Cancel As Integer) AnimateWindow hwnd, 1000, &H80000 + &H10000 Set Form1 = Nothing End Sub AnimateWindow函数可以为程序特别是For Win2000的程序增色不少。 |
|
![]() ![]() |