在VB编程中,应用程序窗体的出现和关闭一般都是静态的,不过,我们利用下面的一个API函数Animate Window就可以轻松实现窗体的动态效果。
API函数Animate Window的声明如下:
Private Declare Function AnimateWindow Lib "user32"(ByVal hwnd As Long, ByVal dwTime As Long, ByVal dwFlags As Long) As Long
其中:hwnd只对form有效;dwtime是动画持续的时间,默认值为200;dwflags是动画方式,可以取&H1、&H2、&H3、&H4、&H5、&H6、&H8、&H9、和&H10共8个值,分别代表左右、右左、上下、左上到右下、右上到左下、下上、左下到右上以及中间到四周等。
AW_HIDE=&H10000 在窗体卸载时若想使用本函数就得加上此常量。
AW_ACTIVATE=&H20000在窗体通过本函数打开后,默认情况下会失去焦点,除非加上本常量
AW_SLIDE=&H40000 窗体移动滑出滑入
AW_BLEND=&H80000 淡入淡出效果(适用于WIN2000)
例:从左上角到右下角逐渐显示窗体
Private Sub Form_Load()
AnimateWindow hwnd, 3000,&H5 Forml.Refresh
End Sub
以上程序在PWIN98,VB6.0中文企业版中运行通过。
dwFlags的值可以用OR组合使用,效果更佳