AnimateWindow API

發表于:2007-07-14來源:作者:點擊數: 標簽:
盡管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有效,其
    盡管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   ?。?nbsp; &H10 ) '看不出任何效果
     AW_HIDE    ?。?amp;H10000) '在窗體卸載時若想使用本函數就得加上此常量
     AW_ACTIVATE  ?。?amp;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的程序增色不少。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97