当前位置:编程学习 > VB >>

AnimateWindow API

函数AnimateWindow.
    尽管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的程序增色不少。

补充:软件开发 , Vb ,
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,