PDA

View Full Version : چطوری می شه فرم را بصورت Fade in باز کرد



mpmsoft
سه شنبه 12 تیر 1386, 19:46 عصر
دوستان من می خوام یک Effect بذارم تو پنجره هام
می خوام پنجره هام Fade بشه موقع بسته شدن و باز شدن

majidghost
سه شنبه 12 تیر 1386, 20:00 عصر
امیدوارم مفید واقع بوده باشم:


Const LWA_COLORKEY = &H1
Const LWA_ALPHA = &H2
Const GWL_EXSTYLE = (-20)
Const WS_EX_LAYERED = &H80000
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long) As Long
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function SetLayeredWindowAttributes Lib "user32" (ByVal hWnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Long
Private Sub Form_Load()
Dim Ret As Long
Ret = GetWindowLong(Me.hWnd, GWL_EXSTYLE)
Ret = Ret Or WS_EX_LAYERED
SetWindowLong Me.hWnd, GWL_EXSTYLE, Ret
SetLayeredWindowAttributes Me.hWnd, 0, 0, LWA_ALPHA
Form1.Show
DoEvents
Dim II As Long
For II = 0 To 510
SetLayeredWindowAttributes Me.hWnd, 0, Int(II / 2), LWA_ALPHA
DoEvents
Next
End Sub
Private Sub Form_Unload(Cancel As Integer)
Dim II As Long
For II = 510 To 0 Step -1
SetLayeredWindowAttributes Me.hWnd, 0, Int(II / 2), LWA_ALPHA
DoEvents
Next
End Sub

Mehrdad Tehrani
سه شنبه 12 تیر 1386, 20:29 عصر
اینم واسه شما ! دیگه چی ؟